ハッシュテーブルのパフォーマンスに問題があることは知っていますが、100万アイテムのハッシュテーブルは100アイテムのハッシュテーブルより速くなります。100万アイテムのハッシュテーブルと100アイテムのハッシュテーブルのパフォーマンスはどのように異なるのですか
2
A
答えて
5
これは、使用されるハッシュアルゴリズムの効率によって異なります。
小さなマップには多くの衝突があり、大きなマップには衝突がない場合は、大きなものが速くなります。
について初期容量と負荷率を学ぶためにHashMap
javadocを読んで、ハッシュコード(Object.hashCode()
で始まる)について読みました。 (Hashtableは古代遺物であるdon't use itです)
11
すべてが衝突の数に依存します:100万アイテムのハッシュテーブルに全く衝突がない場合、100個のアイテムと100個のものよりはるかに高速です衝突。
衝突がない場合は、ハッシュキーとモジュロ(完全なハッシュを参照)を使用するだけで、検索はO(1)になります。衝突の場合(配列としてのハッシュテーブルとリンクがリンクリストにチェーンされていると仮定します)、問題のアイテムを見つけるまでそれらをすべて順番に辿る必要があります。最悪の場合は100%の衝突率です(つまり、 O(n)になります。
+0
おかげで、答えは完璧です – user1147717
関連する問題
- 1. IE 7でliアイテムを親コンテナの幅の100%にするにはどうすればよいですか?
- 2. Java SQL 100万行
- 3. 100万レコードの配列はどこに保存すればよいですか?
- 4. のdiv:100%が異なる
- 5. のEmacs:GETHASHはハッシュテーブル
- 6. Javaのハッシュテーブル(ハッシュテーブル)の「t」が大文字でない理由
- 7. なぜPerl 6の内100 ~~^100リターン偽のでしょうか?
- 8. 100の配列の中間のアイテムを検索するのが、10のアイテムの配列よりも速いのはなぜですか?
- 9. "height:100%"のスタイルの要素が100%を超えるように見えるのはなぜですか?
- 10. ハッシュテーブルとJavaでの同期
- 11. は、どのように私はこのようにハッシュテーブルに私のフォームコントロールのすべてを入れているハッシュテーブルのエントリ
- 12. サンプルデータを100万行作成する
- 13. CSS:どのようにhtml、体の高さが来る:100%は100%以上ですか?
- 14. MySQLのソリューションは1日あたり100万クリックです
- 15. r5rsのハッシュテーブル
- 16. ハッシュテーブルの「プロパティ」C#
- 17. Ocamlのハッシュテーブル
- 18. のJava - ハッシュテーブル
- 19. powershellのハッシュテーブル
- 20. JqGridで100万レコードを表示
- 21. PerlとPythonのハッシュテーブルTranslation
- 22. ハッシュテーブルとキー、値の宣言
- 23. ハッシュテーブルとバケットハッシュの使い方
- 24. ハッシュテーブル
- 25. 100万の数値を並べ替えるにはどうすればいいですか?
- 26. Visual Studioイミディエイトウィンドウ:最初の100個以上のアイテムを表示する方法
- 27. ハッシュテーブルのサイズと重要なビット
- 28. VBAのようなアイテムですか?
- 29. ハッシュテーブル実装のハッシュアルゴリズム
- 30. ハッシュテーブルの使い方
「Hashtable」、「HashMap」、「ConcurrentHashMap」、または一般的なハッシュテーブルについて話していますか?自分で実験したときに何を見つけましたか? –