我正在尝试创建一个method来计算哈希表中发生了多少冲突。我是否要检查整个table来查看有多少buckets具有1个以上的element
草案:

 public int getCollisions() {
 int counter = 0;
 for (int i = 0; i < buckets.length; i++) {
     if (buckets.length > 1) {
         counter += i;
     }
 }
 return counter;
 }

最佳答案

我可能会用这个-

public long getCollisions() {
  long counter = 0;
  for (int i = 0; i < buckets.length; i++) {
    if (buckets[i].length > 1) {
      counter += buckets[i].length; // 2 (or more) items collided in this bucket.
    }
  }
  return counter;
}

关于java - 哈希表冲突概念,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20433516/

10-10 04:24