CodeBlanks Logo Icon CodeBlanks

Ağaç nedir?

Kök ve çocuk düğümlerden oluşan hiyerarşik veri yapısını öğrenirsin.

Ağaç nedir?

Ağaç (tree), düğümlerden (node) ve kenarlardan (edge) oluşan, hiyerarşik ve döngüsüz bir veri yapısıdır. Bir kök (root) düğüm vardır; her düğümün sıfır veya daha fazla çocuğu olabilir.

Köke en yakın olanlar iç düğüm (internal), çocuğu olmayanlar yaprak (leaf) düğümdür. Ağaçlar hiyerarşik verileri (dosya sistemi, kurum yapısı) temsil etmek için idealdir.

İkili ağaç (binary tree) her düğümün en fazla iki çocuğu olduğu özel bir ağaçtır.

Düğüm ve kenar

Her düğüm bir değer ve çocuk işaretçileri tutar. İkili ağaçta left ve right işaretçileri vardır. Kenar, ebeveyn-çocuk bağlantısıdır.

n düğümlü bir ağacın n-1 kenarı vardır (kök hariç her düğümün bir ebeveyni vardır). Yükseklik (height), en uzun kök-yaprak yolunun kenar sayısıdır.

Python'da düğüm genellikle bir sınıfla temsil edilir.

Uygulama Düğüm oluştur

Node sınıfı yaz. val, left, right alanları olsun. print(Node(5).val) ile 5 yazdır.

Başlangıç kodu

solution.py
class Node:
    def __init__(self, val):
    # Düğüm kur

Örnek çözüm

solution.py
class Node:
    def __init__(self, val):
        # Düğüm kur
        self.val = val
        self.left = None
        self.right = None
print(Node(5).val)

Beklenen çıktı

5

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Yaprak düğüm nedir?

  • Kök düğüm
  • Çocuğu olmayan Doğru cevap
  • İki çocuğu olan
  • En üstteki

Açıklama: Çocuğu olmayan

2 Düğüm sınıfı

Soru
class Node:
    def __init__(self, val):
        self.val = val
        self.left = ____
        self.right = None
Cevap
class Node:
    def __init__(self, val):
        self.val = val
        self.left = None
        self.right = None

Açıklama: None doğru.

3 Ağaç nedir: kavramları eşleştir

Kavram Anlamı
Kök En üst
Yaprak Çocuksuz
İç düğüm Çocuğu var
Kenar Bağlantı

Orta seviye bölümündeki tüm dersler