2017-04-13 9 views
0

Setに要素を追加する場合は、すでに2000個の要素がSetに追加されていて、新しく追加された要素がすでにset内に存在するかどうかを迅速に検索する方法はありますか?コアJavaコレクションフレームワーク

+0

どちらの 'Set'実装を使用していますか? –

+0

SortedSet(TreeSetなど)を使用できます – dev8080

+0

HashSetの実装 – ramug

答えて

0

あなたのセットに何千もの要素があり、あなたがadd、remove、containsのような操作にHashSetを使うよりも、より良いパフォーマンスを望むなら。

HashSetが最も高速ですが、LinkedHashSetはパフォーマンス上、またはHashSetとほぼ同じですが、TreeSetは各挿入時に実行する必要がある並べ替え操作のために少し遅くなります。

HashSetとLinkedHashSetは一定の時間コストを提供します。 O(1)、TreeSetはそのような操作のlog(n)時間コストを提供します。 LinkedHashSetは要素の挿入順序を維持していますが、HashSetは順序を保持しません。

関連する問題