使用JavaScript将元素添加到哈希表

将元素添加到哈希表时,最关键的部分是冲突解决。我们将同样使用链接。您还可以在此处阅读其他算法:https : //en.wikipedia.org/wiki/Hash_table#Collision_resolution

现在让我们看一下实现。我们将创建一个仅对整数起作用的哈希函数,以使其保持简单。但是可以使用更复杂的算法来哈希每个对象- 

示例

put(key, value) {
   let hashCode = hash(key);

   for(let i = 0; i < this.container[hashCode].length; i ++) {

      //用给定的键替换现有值
      //如果已经存在
      if(this.container[hashCode][i].key === key) {
         this.container[hashCode][i].value = value; return;
      }
   }

   //将线对推到阵列的末端
   this.container[hashCode].push(new this.KVPair(key, value));
}

您可以使用 

示例

let ht = new HashTable();
ht.put(10, 94); ht.put(20, 72);
ht.put(30, 1);
 ht.put(21, 6);
ht.put(15, 21);
ht.put(32, 34);
 ht.display();

输出结果

这将给出输出-

0:
1:
2:
3:
4: { 15: 21 }
5:
6:
7:
8: { 30: 1 }
9: { 20: 72 }
10: { 10: 94 } -->{ 21: 6 } -->{ 32: 34 }