Ağaç Veri Yapısı Nedir?
İngilizce: Tree Data Structure
Yayın: · Son güncelleme:
Ağaç Veri Yapısı Nedir? Kısaca
Ağaç veri yapısı, verileri bir kökten başlayıp dallara ayrılan hiyerarşik bir düzende tutan yapıdır. Her düğüm alt düğümlere bağlanabilir; dosya sistemleri ve web sayfalarının yapısı bu modele dayanır.

Ağaç veri yapısı nedir?
Ağaç veri yapısı, elemanları ebeveyn ve çocuk ilişkisiyle bağlayan hiyerarşik bir yapıdır. En üstteki düğüme kök denir. Kökten çıkan bağlantılarla alt düğümlere, onlardan da daha alttakilere inilir. Hiç çocuğu olmayan en alttaki düğümlere yaprak adı verilir.
Temel kavramlar
Adı ağaçtan gelse de bu yapı genellikle ters çizilir: kök yukarıda, yapraklar aşağıdadır. Bir şirketin organizasyon şemasını düşünün. Genel müdür köktür, altında müdürler, onların altında ekip üyeleri yer alır. Her çalışanın tek bir yöneticisi vardır ve bu ilişki hiçbir zaman döngüye girmez.
Bir düğümün kökten uzaklığı onun derinliğidir. Ağacın yüksekliği ise en derin yaprağa olan mesafedir. Aynı ebeveyne bağlı düğümler kardeş sayılır.
Hangi türleri var?
İkili ağaçta her düğümün en fazla iki çocuğu olur. İkili arama ağacı bu yapıyı sıralı tutarak hızlı arama sağlar. AVL ve kırmızı-siyah ağaçlar kendini dengeleyen türlerdir. B-ağaçları ise veritabanı indekslerinde yaygın olarak kullanılır.
Nerelerde karşınıza çıkar?
Bilgisayarınızdaki klasör yapısı bir ağaçtır: kök dizin, onun altındaki klasörler ve en uçtaki dosyalar. Bir web sayfasının HTML yapısı da tarayıcıda DOM adı verilen bir ağaç olarak tutulur. Menüler, kategori listeleri ve yorum altındaki yanıt zincirleri de çoğu zaman ağaç yapısıyla modellenir. Bir ürün kataloğunu "Elektronik > Telefon > Akıllı Telefon" şeklinde düzenliyorsanız, farkında olmadan bir ağaç kuruyorsunuz demektir.
Sıkça Sorulan Sorular
Ağaç ile graf arasındaki fark nedir?
Ağaç, döngü içermeyen ve tek bir kökü olan özel bir graf türüdür. Grafta ise düğümler serbestçe bağlanabilir ve döngüler oluşabilir.
Ağaç veri yapısında gezinme nasıl yapılır?
İki temel yöntem vardır. Derinlik öncelikli aramada bir dalın sonuna kadar inilir; genişlik öncelikli aramada ise her seviye soldan sağa tamamlanarak ilerlenir.