Memoization ve dinamik programlama arasındaki fark nedir?
Dinamik programlama memoization alt olduğunu düşünüyorum. Doğru mudur?
CEVAP
Memoization ve dinamik programlama arasındaki fark nedir?
Memoizationaynı yeniden hesaplama gerekli olduğunda, daha önce hesaplanan sonuçlar önbellek, önbelleğe alınan sonuç bir dönem bir optimizasyon tekniği anlatıyor.
Dinamik programlamaproblemleri çözmek için bir yöntem yinelemeli olarak ve subproblems bu hesaplamalar üst üste uygulanabilir.
Dinamik programlamagenellikleuygulanan tablolama kullanarak, ama aynı zamanda memoization kullanarak uygulanabilir. Gördüğünüz gibi, ne bir "" diğer. alt küme yani
Takip soru makul:Tablolama (tipik dinamik programlama tekniği) ve memoization arasındaki fark nedir?
Dinamik programlama bir problemi tablolama kullanarak sorununu çözmek "aşağıdan yukarıya"alt sorunlar ilk, genellikle doldurarak ilgili tüm çözerek, yaninboyutlu bir tablo. Tablodaki sonuçlara göre, çözüm "top" / özgün problem hesaplanıyor.
Eğer sorunu çözmek için memoization kullanırsanız zaten çözülmüş sorunlar alt haritasını bakımını sen yap. Bunu "yukarıdan aşağıya" "" sorun ilk olarak genellikle alt-sorunları çözmek için yinelenir (). top çözmek anlamda
İyi bir slayt
- Eğer tüm subproblems en az bir kez çözülmesi gereken, bir aşağıdan yukarıya dinamik-programlama algoritması genellikle sabit bir faktör tarafından yukarıdan aşağıya memoized bir algoritma geride bırakıyor
- Tablo korumak için özyineleme ve daha az yük için masraf olmayacak
- Dinamik-programlama algoritması tablo kere düzenli desen, zaman ve mekan şartları daha da azaltmak için kullanılabilir bazı sorunlar var
- Eğer subproblem alan bazı subproblems hiç çözülmesi gerekiyorsa, memoized çözüm kesinlikle gerekli olan sadece bu subproblems çözme avantajı vardır
Ek kaynaklar:
- Vikipedi: *, **1 2*
- İlgili ÇOK soru-cevap: Memoization or Tabulation approach for Dynamic programming
Yazılı ve dinamik olarak statik olarak...
Bildirime dayanan ve onun programlama ...
Yapısal programlama ve fonksiyonel pro...
BUNLAR ve soket programlama AF_INET ar...
Böl ve Algo ve Dinamik Programlama ara...