En uzun ortak alt dizi problemi olarak da karşılaşılan longest common subsequence problemini dynamic programming ile nasıl çözüleceğini içeren kodu bu sayfada bulabilirsiniz. LCS Problemi ne diyenler için : http://en.wikipedia.org/wiki/Longest_common_subsequence_problem Dinamik Programlama ne diyenler için : http://tolpp.com/dinamik-programlama-dynamic-programming-nedir/ Aşağıdaki Java kodunu indirmek için : http://tolpp.com/algorithms/LCS.java
Merhaba. Bu yazıda dinamik programlamayı olabildiğince açıklayıcı şekilde anlatmaya çalışacağım. Dinamik Programlama Nedir? Dinamik programlama karışık problemlerin daha basit düzeylere indirilerek çözülmesini esas alan bir optimizasyon yöntemidir. Optimizasyondaki amaç, problemdeki kısıtlayıcı koşullar altında bu problemle ilgili en iyi karara varmaktır. Bir problem üzerinde dinamik programlama uygulayabilmek için o problemin alt problemlere parçalanabilir veya bir önceki [...]
Seçmeli arama (selection sort) her bir adım sonunda en küçük değerin en başa getirildiği sıralama algoritmasıdır. Dizi içinde dolaşılarak en küçük değer en başa getirilir. Dizideki eleman sayısı N kadar dolaşma işlemi tekrarlandığında dizi üzerinde sırama ede edilmiş olur. Performans Dizimiz üzerinde N tane eleman olsun. Bu durumda N kadar kontrol döngüsü çalıştırılır. Bu döngülerden [...]
Sinking sort olarak da geçen bu sıralama algoritması, komşu olan her iki eleman arasında bir karşılaştırma yapar ve eğer istenenin tersi bir sıralama varsa swapping (yer değiştirme) işlemi uygular. Bu işlem ilk ugulandığında en büyük sayımız en sona yerleşir. Elimizde N elemanlı bir dizi olduğunu kabul edersek, tam bir sıralama elde edebilmemiz için N-1 kere [...]
İhtiyaç duyulan bir değerin sürekli olarak hesaplanması yerine bir kere hesaplanıp ihtiyaç duyulduğunda bu değerin yeniden kullanılmasına verilen addır. Bir fonksiyonel programlama dili olan haskell dilinde memoization işlemi otomatik gerçekleştirilmektedir. Memorization ile karıştırılmaması gerekir. Bir nevi hatırlama denebilir. Gündelik yaşamdan bir bir örnekle : Ali ve Veli isimli iki çocuğu ele alalım. Ahmet amca bu [...]