İçeriğe atla
CodeItRaw
Ağaçlar

Ders 1/3

İkili ağaç düğümlerden oluşur; her düğümün bir değeri ve en çok iki çocuğu vardır: sol ve sağ. En üstteki düğüme kök, çocuğu olmayanlara yaprak denir. Önemli olan şudur: bir düğümün solu da sağı da kendi başına birer ağaçtır. Bu yüzden ağaç soruları özyinelemeye çok yakışır.

def total(node):
if node is None:
return 0
return node.val + total(node.left) + total(node.right)
Kalıp neredeyse hiç değişmez: boş ağacın cevabı nedir (taban durumu), ve bir düğümün cevabı, iki çocuğunun cevabından nasıl çıkar? Toplam için: boş ağaç 0, düğüm ise kendi değeri artı iki alt ağacın toplamı.

Düğümleri hangi sırayla ziyaret ettiğinin adı vardır. Sıralı (in-order): önce sol alt ağaç, sonra düğümün kendisi, sonra sağ. Önce kök (pre-order): düğüm, sol, sağ. Sonra kök (post-order): sol, sağ, düğüm. Fark yalnızca düğümle ilgili satırın iki çağrıya göre nerede durduğudur.

Görevler

Görevler sırayla açılır. Hepsini çözünce sonraki ders açılır.

Bu dersin görevleri, önceki dersler bitince açılır. Anlatımı şimdiden okuyabilirsin.

  1. 01

    Sıralı Gezinti

    Kod Okuma · Çıktıyı Tahmin Et

  2. 02

    Ağaç Toplamı

    Fonksiyon

Sırayı beklemeden çözmek istersen bütün problemler kilitsiz açık: Problemler listesi