从 Javascript 哈希表中移除元素


要删除元素,我们只需要找到它们并使用一个简单的 splice 函数调用来删除它们,这个调用会就地删除数组中的元素。

让我们看看相同的实现 − 

示例

remove(key) {
   let hashCode = this.hash(key);

   for (let i = 0; i < this.container[hashCode].length; i++) {
      // Find the element in the chain
      if (this.container[hashCode][i].key === key) {
         this.container[hashCode].splice(i, 1);
         return true
      }
   }
   return false;
}

你可以使用 − 来测试这一点

示例

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);

console.log(ht.get(20));
console.log(ht.remove(20));
console.log(ht.get(20));
console.log(ht.remove(20));

输出

这将输出 −

{ key: 20, value: 72 }
true
undefined
false

第一次它返回 true,因为它已被成功找到并删除。第二次,因为不在,所以 remove 函数返回 false。

更新日期:15-Jun-2020

1K+ 次浏览

开启你的职业生涯

通过完成本课程获得认证

开始学习
广告