HashSetクラスを勉強したように、塗りつぶし率という概念を使用しています。これは、HashSetがこの限界までいっぱいになるとHashSetが大きくなり、それに。なぜ、HashSetにオブジェクトがいっぱいになってから、新しいHashSetを作成させるのはなぜですか?なぜ新しい概念がHashSetのために派生したのですか?HashSetの塗りつぶし率または荷重係数の概念とは何か
答えて
ArrayListとVectorの両方が位置インデックスでアクセスされるため、競合はなく、アクセスは常にO(1)です。
ハッシュベースのデータ構造はハッシュ値によってアクセスされます。ハッシュ値は、第2レベルの「オーバーフロー」データ構造(リストまたはツリー)へのアクセスに衝突し、劣化する可能性があります。そのような衝突がない場合、アクセスはO(1)ですが、多くの衝突があると、それはかなり悪化する可能性があります。より多くのメモリを割り当てることで、これを少し制御することができます(バケットがたくさんあり、衝突が少なくなるように)。
結果として、すべての要素を格納するのに必要な容量以上にArrayListを拡張する必要はありませんが、HashSetの場合にはビット(またはロット)を「無駄にする」のは意味があります。このパラメータは、プログラマが自分のアプリケーションに最適なものを選択できるように公開されています。
Jonny Henlyが説明しました。データが格納される方法が原因です。
ArrayListは線形データ構造ですが、HashSetはそうではありません。 HashSetでは、データはハッシュコードに基づいて基本配列に格納されます。ある意味では、HashSetのパフォーマンスは、いくつのバケットが満たされているか、これらのバケット間でどのくらいデータが分散しているかに関係しています。このデータの分布が一定レベル(負荷率と呼ばれる)を超えると、再ハッシングが行われます。
HashSetは、HashSetに格納されているエントリの数に関係なく、一定の時間内に基本的な操作(追加、フェッチ、変更、削除など)を確実に実行するために主に使用されます。
よく設計されたハッシュ関数ではこれを達成できますが、設計には時間がかかることがあります。したがって、パフォーマンスがアプリケーションの重要な要件である場合、負荷係数を使用して、一定の時間内で操作が確実に実行されるようにすることができます。私は、これらの両方をお互いに冗長なもの(負荷要因とハッシュ関数)と呼ぶことができると思います。
私はこれが完璧な説明ではないことに同意しますが、それはその主題についていくらか明確にすることを望みます。
- 1. なぜHashSetコンストラクタのデフォルトの塗りつぶし比率が0.75ですか?
- 2. DBCC DBREINDEXの塗りつぶし係数はいつ指定しますか?
- 3. CNTKTextFormatDeserializerの概念とは何ですか?
- 4. 塗りつぶし係数と挿入速度
- 5. 塗りつぶしファイルは
- 6. 塗りつぶし値は
- 7. ArraylistとVectorの荷重係数は?
- 8. 概念とは何ですか?
- 9. Anecessと同等の概念を持つAnstatesは何ですか?
- 10. HYBRIS - 関係概念
- 11. オブジェクトパーシスタンスの概念は何ですか?
- 12. 塗りつぶし(bashの)
- 13. 予荷重または予荷重はありませんか?
- 14. この概念は何と呼ばれていますか?
- 15. 重要なことを学ぶときに "徹底的に"スラングの概念
- 16. 効率的な凸形状の塗りつぶし
- 17. CoreGraphics塗りつぶしのパスとストロークパス
- 18. Pythonとwebbrowserフォームの塗りつぶし
- 19. SDL2の描画と塗りつぶし
- 20. Bスプライン曲線の次数の概念は何ですか?
- 21. 概念SQL - 重量あたりのピースとの価格あたりの価格
- 22. 空(または塗りつぶし)最近のアプリ一覧
- 23. svgグループ化されたポリラインを塗りつぶして塗りつぶす
- 24. 概念的には、Android StudioのLogcatとは何ですか?
- 25. Rの環境変数と関連する概念について学ぶ
- 26. 移転の概念は何を意味していますか?
- 27. 概念化ヘルプ(アクセス関係)
- 28. 条件付きでボロノイセグメントの塗りつぶし/塗りつぶし
- 29. SVGオブジェクトに塗りつぶしの色と塗りつぶしのパターンの両方を持たせることはできますか?
- 30. このURL文字列の概念とは何ですか?
http://stackoverflow.com/questions/3564638/hashset-load-factor?rq=1これが役立ちますか? – nullpointer
'ArrayList'に重複がありますか? 'ArrayList'はどのようにしてもハッシュコードを使用しますか?新しい概念ではありません。「HashMap」を検討してください。 –
@nullpointerいいえ助けにならない –