在 Javascript 中連線兩個雜湊表


有時,我們需要使用連線函式合併容器並獲得新容器。我們將編寫一個靜態連線方法,它接受 2 個雜湊表並建立一個包含所有值的新雜湊表。為簡單起見,如果其中任意一個雜湊表中存在某個鍵,我們將利用第二個雜湊表中的值覆蓋第一個雜湊表中的值。 

示例

static join(table1, table2) {
   // Check if both args are HashTables
   if(!table1 instanceof HashTable || !table2 instanceof HashTable) {
      throw new Error("Illegal Arguments")
   }

   let combo = new HashTable();
   table1.forEach((k, v) => combo.put(k, v));
   table2.forEach((k, v) => combo.put(k, v));
   return combo;
}

你可以使用來測試此示例 − 

示例

let ht1 = new HashTable();

ht1.put(10, 94);
ht1.put(20, 72);
ht1.put(30, 1);

let ht2 = new HashTable();

ht2.put(21, 6);
ht2.put(15, 21);
ht2.put(32, 34);

let htCombo = HashTable.join(ht1, ht2)

htCombo.display();

示例

這將給出以下輸出 −

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

更新於: 15-6-2020

443 次瀏覽

開啟您的職業生涯

完成課程取得認證

開始
廣告
© . All rights reserved.