ConcurrentSkipListMapのコンストラクタでinitial capacity
をHashMapのように設定できないのはなぜですか?ConcurrentSkipListMapの初期容量を設定できないのはなぜですか?
5
A
答えて
6
このデータ構造には、最初の容量のコンストラクタパラメータが意味を持たない複数のLinkedListが付いているためです。
HashMapは、このテーブルの最初のサイズを越えると、HashMapが新しいテーブルを非常に大きなサイズで再割り当てするため、初期容量を設定することが理にかなっている配列(連続したメモリ空間)高価です。
+1
(ただし、HashMapの場合、地図のサイズを大幅に過大評価するのはコストがかかります...) –
関連する問題
- 1. ArrayListが指定した容量に初期化されないのはなぜですか?
- 2. StringBuilderの最も効率的な初期容量サイズですか?
- 3. ArrayListからの削除で初期容量が重要なのはなぜですか?
- 4. CopyOnWriteArrayListの初期容量
- 5. なぜ初期化されていないローカル変数にブレークポイントを設定できないのですか?
- 6. IllegalArgumentException:u'requirement failed:Google DataProcのSparkで無効な初期容量 '
- 7. Zend-frameworkを設定できないのはなぜですか?
- 8. IntVarを設定できないのはなぜですか?
- 9. Dojo DateTextFieldを設定できないのはなぜですか?
- 10. なぜHashMapは初期容量が2の累乗であることを要求しますか?
- 11. 宣言でクラスメンバーを初期化できないのはなぜですか?
- 12. C#:バイト配列で初期化できないのはなぜですか?
- 13. なぜUILabelのテキストプロパティを設定できないのですか?
- 14. ArrayList 10のデフォルト容量はなぜですか?
- 15. カスタムインターセプタが初期化されないのはなぜですか?
- 16. NSFetchRequestが初期化されないのはなぜですか?
- 17. node-debug:なぜブレークポイントを設定できないのですか?
- 18. Java 8 ArrayListの初期容量が壊れていますか?
- 19. なぜAlamofire 4セッションマネージャを初期化できないのですか?
- 20. C、なぜポインタを宣言して初期化できないのですか?
- 21. Chromeの保存容量と保存容量を取得できない
- 22. コンポーネントのコンストラクタで状態を設定できないのはなぜですか?
- 23. magentoセットアップスクリプトでauto_incrementの値を設定できないのはなぜですか?
- 24. bash:バックグラウンドシェルでSIGINTのトラップを設定できないのはなぜですか?
- 25. Google Chromeのスクリプトデバッガでブレークポイントを設定できないのはなぜですか?
- 26. StringBuilderのデフォルト容量は16文字ですのはなぜですか?
- 27. 静的変数をリテラルでない値で初期化できないのはなぜですか?
- 28. 初期値の設定方法/ :(foldRightではない)
- 29. Javaコンストラクタを同期できないのはなぜですか?
- 30. なぜ私はダイアログビューのボタンのonClickListenerを設定できないのですか?
@MarkoTopolnik skiplistのデータ構造は私にとって初めてのものです。私はソートされたマップの実装が必要であり、そのマップは複数のスレッドから同時の変更を繁栄させる必要があります。私はConcurrentSkipListmapを探していました>前もってCocurrenthashmapを使用していました。 – Geek
@Geek - 良いデータ構造の本を読む時間。 –
@StephenC Cormenを読んでいるが、まだSkipListsに行っていない。赤い黒い木々を覆った。 – Geek