কখনো কখনো আমাদের কন্টেইনারগুলোকে একটি join ফাংশন ব্যবহার করে একসাথে কম্বাইন করতে হয় এবং একটি নতুন কন্টেইনার পেতে হয়। আমরা একটি স্ট্যাটিক join মেথড লিখব যা ২টি HashTable নেবে এবং সব ভ্যালুসহ একটি নতুন HashTable তৈরি করবে। সادगीর জন্য, যদি উভয় টেবিলে একই কি থাকে তবে আমরা দ্বিতীয় টেবিলের ভ্যালুকে প্রথম টেবিলের ভ্যালুর ওপর প্রাধান্য দেব।
উদাহরণ
static join(table1, table2) {
// চেক করুন দুটি আর্গুমেন্ট HashTable কিনা
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 }