algoritma + ekle birleştirme obejct: Ben O aldığı bu oluşturmak,JavaScript ben & böyle bu iki nesne eklemek birleştirmek çalışıyordu
obj1 = {
jpg: 1,
gif: 3,
}
obj2 = {
jpg: 1,
avi: 5,
}
obj3 = mergeAdd(obj1, obj2);
// obj3 = {
// jpg: 2,
// gif: 3,
// avi: 5,
// }
İlk (n^2) sever:
for (let foo in obj1) {
for (let bar in obj2) {
if (foo === bar) {
// Exists : Add count
obj1[bar] += obj2[bar];
} else {
// Don`t Exists : Copy from obj2
obj1[bar] = obj2[bar];
}
}
}
- obj1arasında 'anahtar' için müzakere değerini alın: karma işlevi kullanılarak -
Ve sonra, bir 'yeni bir fikir' aklıma gelenobj2.
- Nesnenin bir dizini olarak karma değerlerini kullanarak obj1 nesnesine 'value' değeriniobj2 ekleyin veya ekleyin.
- Diziyi yeni nesneye dönüştürün.
Bilmek istiyorum:
- mergeAdd gibi bir işleve sahip herhangi kitaplığı (obj1 obj2,) var mı?
- 'Yeni fikirim' mergeAdd'den (obj1, obj2) daha hızlı mı?
- MergeAdd yapmak için en hızlı algoritma nedir?
Teşekkürler!
O (nlogn). – jmugz3