从 Javascript 哈希表中删除元素

front end technologyweb developmentjavascript

要删除元素,我们只需找到它们并使用简单的 splice 函数调用将其删除,该函数调用会从数组中删除元素。

让我们看看相同 −  的实现

示例

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

   for (let i = 0; i < this.container[hashCode].length; i++) {
      // 查找链中的元素
      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。


相关文章