Izgarada Yol Sayma
Bir köşeden diğerine giden yolları toplayın.
Izgarada Yol Sayma, CoddyKit'te ücretsiz bir Coding Interview Prep dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Coding Interview Prep öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Coding Interview Prep kursu toplamda 4 dersten oluşur.
Klasik Izgara Problemi
Bir ızgaranın sol üst köşesinden başlayıp sağ alt köşesine ulaşmak istiyorsunuz. Her adımda sağa veya aşağı hareket edebilirsiniz. Kaç farklı yol vardır?
DP Neden Uygun
Her hücreye üstündeki hücreden veya solundaki hücreden ulaşılabilir. Bu örtüşme, bunun tam olarak neden bir DP problemi olduğunu açıklar.
Durumu Tanımlama
dp[i][j], başlangıçtan (i, j) hücresine ulaşmanın yollarının sayısı olsun. Durumu açıkça adlandırmak, işin yarısını tamamlamaktır.
Geçiş
Bir hücreye yalnızca üstten veya soldan gelebilirsiniz; bu nedenle sayı, bu ikisinin toplamıdır. Tüm tabloyu yönlendiren geçiş budur.
dp[i][j] = dp[i-1][j] + dp[i][j-1]Temel Durum
Başlangıç hücresine ulaşmanın tam olarak bir yolu vardır: hiçbir şey yapmamak. Bu nedenle başka hiçbir şeyi doldurmadan önce dp[0][0] değerini 1 yaparsınız.
dp[0][0] = 1Kenarların Tek Yolu Vardır
Üst satırdaki veya sol sütundaki hücrelerin tek bir düz yolu vardır. Bir komşuları ızgaranın dışında kaldığından sayıları her zaman 1'dir.
Tabloyu Oluşturma
Sıfırlarla doldurulmuş m'ye n boyutunda bir tablo oluşturun. Boyutunu baştan belirlemek, indislerinizi düzenli tutar ve sürprizleri önler.
dp = [[0] * n for _ in range(m)]Okuma Sırasıyla Doldurma
Satırların, ardından sütunların üzerinden yukarıdan aşağıya ve soldan sağa döngü kurun. Bu sıra, kullanmadan önce her iki komşunun da hazır olmasını garanti eder.
for i in range(m):
for j in range(n):
...Sonuç Hücresi
Doldurma işlemi tamamlandıktan sonra yol sayısı son hücrede bulunur. Sonuç, sağ alt köşedeki dp[m-1][n-1] değeridir.
answer = dp[m-1][n-1]Tek Satırla Bellekten Tasarruf
Her satırın yalnızca üstündeki satıra ihtiyacı vardır; bu nedenle tek bir satır tutup onu yerinde güncelleyebilirsiniz. Böylece bellek kullanımı O(n) olur.
row[j] += row[j-1]Matematiksel Kısa Yol
Engel yoksa sonuç bir binom katsayısıdır: toplam adımların hangilerinin aşağı doğru olacağını seçersiniz. Engeller ortaya çıktığında DP yine avantajlıdır.
Hızlı Kontrol
Engelsiz bir iç hücre için dp[i][j] değerini dolduruyorsunuz. Hangi formül doğrudur?
Tekrar: Yol Sayma
dp değerini bir hücreye giden yollar olarak tanımlayın, dp[0][0] değerini 1 yapın ve üstteki hücreyle soldaki hücreyi toplayın. Köşe, sonucu içerir. 🧭
Sıkça Sorulan Sorular
“Izgarada Yol Sayma” dersi ücretsiz mi?
Evet — “Izgarada Yol Sayma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Coding Interview Prep kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Coding Interview Prep kursu toplamda 4 dersten oluşur.
“Izgarada Yol Sayma” dersinde ne öğreneceğim?
Bir köşeden diğerine giden yolları toplayın. Coding Interview Prep ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Coding Interview Prep öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Coding Interview Prep, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.
“Izgarada Yol Sayma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Coding Interview Prep dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Coding Interview Prep dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.