数値のセットとハッシュテーブルのサイズを指定した場合、どのようにして衝突数をシミュレートできますか?ハッシュテーブル内の衝突の数を一連の値から数えるにはどうすればよいですか?
-6
A
答えて
1
セット内の数値のハッシュ値を計算し、重複したハッシュ値の数を数えます。この
単純な実装は次のようになります。
List<Integer> yourValues = /* Your set of numbers */;
Map<Integer, Set<Integer>> map = new HashMap<>();
// Insert all elements into buckets based on their hash value
yourValues.forEach(value -> {
if (!map.containsKey(value.hashCode()))
map.put(value.hashCode(), new HashSet<>());
map.get(value.hashCode()).add(value);
});
// Sum up the number of values in each bucket, subtract the number of buckets, so only duplicate values are counted
int collisions = map.values().stream().map(Set::size).reduce(0, Integer::sum) - map.size();
System.out.printf("Number of collisions: %d\n", collisions);
関連する問題
- 1. ハッシュテーブルの衝突数をどのように数えることができますか?
- 2. ハッシュテーブルの衝突再ハッシング - 値はどのように読み取られますか?
- 3. オープンアドレスによるハッシュテーブルの衝突なし
- 4. ハッシュ関数の衝突率をどのようにスパイクするのですか?
- 5. Pythonのモジュールシステム内で命名の衝突を避けるにはどうすればよいですか?
- 6. pygameの衝突をどのようにするにはどうすればいいですか?
- 7. 増加する一連の数値を変更するにはどうすればよいですか?
- 8. JavaMEのcollidesWith()での衝突数を数えるには?
- 9. テキストファイルの数値を大きい数値に置き換えるにはどうすればよいですか?
- 10. どのように衝突を検出するが、box2dで衝突しない?
- 11. Rubyでハッシュの配列から属性の値を数えるにはどうすればよいですか?
- 12. ハッシュテーブルにおける衝突の確率
- 13. 列内の異なる値の出現を数えるにはどうすればよいですか?
- 14. Javascriptの連続関数からブール値を返すにはどうすればよいですか?
- 15. 関数内の変数の値をGoogleマップ関数に渡すにはどうすればよいですか?
- 16. 定義された関数と別の関数のパラメータとの間の名前の衝突を解決するにはどうすればよいですか?
- 17. 関数内のPDOで特定の行を数えるにはどうすればよいですか?
- 18. bashを使用してパス内のディレクトリの数を数えるにはどうすればよいですか?
- 19. メソッド内から変数の値を変更するにはどうすればよいですか?
- 20. 関数内のforeachループ内の配列から値を返すにはどうすればいいですか?
- 21. C++関数内の元の変数の値を変更するにはどうすればよいですか?
- 22. サードパーティのXMLスキーマの衝突を解決するにはどうすればよいですか?
- 23. 2つの移動2d指向バウンディングボックスの衝突をテストするにはどうすればよいですか?
- 24. ArrayList内の複数の重複要素を数えるにはどうすればよいですか?
- 25. 配列リスト(Java)内の各オブジェクトの数を数えるにはどうすればよいですか?
- 26. SwiftでScenekitの衝突検出を処理するにはどうすればよいですか?
- 27. 関数内のグローバル変数の値を変更するにはどうすればよいですか?
- 28. オブジェクトが配列内のすべてのオブジェクトに衝突するかどうかを確認するにはどうすればいいですか(ピクチャボックス)
- 29. RegEx:パターンから値/数値を抽出し、それを別のものに置き換えるにはどうすればよいですか?例えば
- 30. ポインタからのポインタから変数の値を参照するにはどうすればよいですか?
あなたがこれまでどのような研究を行っていますか? –
衝突の回数は、あなたのハッシュアルゴリズムに依存します。したがって、これには一応の答えはありません。 – diesieben07