Cormen ve arkadaşlarının Algoritmalara giriş bölümünde, bölüm 15.3 Dinamik programlamanın öğeleri notu şu şekilde açıklar:
Bir memoized özyinelemeli algoritma, her alt probleme çözüm için bir tabloda bir giriş tutar. Her tablo girişi başlangıçta girdinin henüz doldurulmadığını gösteren özel bir değer içerir. Özyinelemeli algoritma açıldığında alt sorunla ilk karşılaşıldığında, çözümü hesaplanır ve tabloda saklanır. Bu alt problemle karşılaştığımız her seferinde, tabloda depolanan değeri ararız ve geri veririz.
Ve bir dipnot olarak ekler:
Bu yaklaşım tüm olası alt problem parametrelerini bildiğimizi ve tablo pozisyonları ile alt problemler arasındaki ilişkiyi kurduğumuzu varsayar. Bir başka, daha genel yaklaşım, alt problem parametreleri ile hash anahtar olarak kullanarak not almaktır.
Bir (çok boyutlu) diziden ziyade, kaydedilmiş değerleri sözlükte depolamayı gerektiren (veya kolaylaştıran) iyi bilinen DP sorunları var mı?
Arka plan: Bu herhangi bir kullanımda ise, bu sorunun nedeni, (kendi kendini dengeleyen) ikili arama ağaçlarının kavramını yeni dinamik programlama görmüş insanlara motive etmeye çalışıyorum.