Aralarinda direkt belirtebilecegin bir fark yok. Bir problemi recursive olarak cozebiliyorsan, esas problem kucuk cozumlerin recursive olarak birlestirilmelerinden yararlanilarak cozulebiliyor demektir. ( Ornegin fibonacci sayi dizisini elde etmek gibi ). Bu durumda, buyuk problemi cozerken, kucuk problemlerin cozumlerini dynamic olarak aklinda tutarak ( memoization ) daha kisa zamanda cozebilirsin bazi durumlarda. Ornegin 46! = A ise, 47! hesaplamak icin A * 47 yapmak yeterli olacaktir. Yani recursive dynamic programming yaparken kullanilabilir de, kullanilmayabilir de. Recursive olarak cozebilecegin bir problemi dp ile daha hizli cozebilirsin de, cozemeyebilirsin de. Ornegin n tane node iceren bir tree'nin yuksekligini ( height ) recursive olaran logn zamanda bulabilirsin (tree nin yapisina gore, bulamayabilirsin de ). Recursion kullanarak cozebilecegin bu problemi, dynamic programming olarak daha hizli cozemeyebilirsin. Algoritma ve data analizi yapip, recursion tree yi analiz edip DP formatini olusturup buna karar verilebilir. Fibonacci orneginde DP kullanilabilir, cunku recursion analizi yaparsan ayni problemi defalarca cozdugunu gorursun, memoization ile bu sure O(1) e indirgenebilir.
< Bu mesaj bu kişi tarafından değiştirildi Mephalay -- 18 Ağustos 2018; 21:29:31 >
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.