Ağaç nedir?
- Algoritmalar kursu
- Orta seviye
- Ders 25/80
- 4 dk
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
class Node:
def __init__(self, val):
# Düğüm kurÖrnek çözüm
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ı
class Node:
def __init__(self, val):
self.val = val
self.left = ____
self.right = None
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ı |