1.42 Java を使用する必要があります。TreeMap
、 に対して O(log n) の複雑さを持たせるためput()
に使用しますremove()
。int
キーが単語のオフセットであり、値がその長さであると仮定しましょう。「それほど厳密ではない」検索が必要です-のようにCollections.binarySearch
-「見つからない」という単純な答えの代わりに正確なキーが見つからない場合、特別な負の値を返すことができます(挿入ポイントはそこから計算できます)。
テキストエディタがあるとしましょう。ここで「|」はカーソル位置を意味します。ArrayList を使用した Collections.binarySearch は、-(insertion point) - 1
以下のサンプルを返します。
単語 1 単語 |ord2 単語 3