Java Hashtableには、loadFactorを指定できるコンストラクタがあります。しかし、initialCapacity(n)がわかっている場合、loadFactorを指定するポイントは何ですか?Java HashTable LoadFactor
バケットの配列のサイズが一定であると仮定すると、コンストラクタHashtable(int initialCapacity, float loadFactor)
はinitialCapacityより大きい容量を持つハッシュテーブルを作成して正しいloadFactor?
負荷係数は、アレイのサイズを変更するタイミングを示します。負荷係数が高いほど、後でサイズを変更し、衝突が増えることを意味します。 –
質問は何を求めているのですか(これは興味深い質問だと思います):実際には 'initialCapacity'を使って最初のサイズを盲目的に使うのですか?もしそうなら、loadFactorが1でなければ 'initialCapacity'値が追加されたときにサイズを変更する必要があるからです。 'initialCapacity'が何個の値が追加されるのかを正確に見積もっていると仮定すると、' initialCapacity'点をサイズ変更せずに追加できるように初期サイズを計算する方が理にかなっていませんか?換言すれば、初期容量は初期*テーブルサイズ*または初期容量*を意味するか? –
@andrewcooke:私はあなたが何を意味するのかを見ていますが、[Javadoc](http://docs.oracle.com/javase/6/docs/api/java/util/Hashtable.html)によると、 "The * capacity *ハッシュテーブルの*バケツ数* "(元のイタリック体)なので、ここには矛盾はありません - たぶん貧しい言葉の選択でしょう。 – ruakh