Ağaç türleri
- TypeScript kursu
- İleri seviye
- Ders 10/57
- 4 dk
Ağaç yapılarını türle ifade etmeyi öğrenirsin.
Ağaç türleri nedir?
Bir ağaç (tree) türü, her düğümün bir değeri ve bir alt düğüm dizisi içermesiyle tanımlanır. cocuklar: Dugum[] alanı yine aynı türü referans alır; böylece sınırsız dallanma mümkün olur. Dosya sistemleri, kategoriler ve organizasyon şemaları bu yapıyla modellenir.
type Dugum = {
ad: string;
cocuklar: Dugum[];
};Ağaç derinliği
Ağaç türünde her düğüm kendi içinde alt düğümler taşıdığı için veri sınırsız derinlikte olabilir. cocuklar: Dugum[] sayesinde her alt düğüm yine aynı yapıya uyar. Yaprak düğümlerde cocuklar boş dizi olur ve dallanma biter.
Uygulama Ağaç nesnesi oluştur
Dugum adında bir recursive type tanımla: { ad: string; cocuklar: Dugum[] }. kok değişkeni Dugum türünde olsun ve değeri { ad: "kok", cocuklar: [{ ad: "cocuk1", cocuklar: [] }] } olsun. kok.ad değerini console.log ile yazdır.
Başlangıç kodu
// Dugum adinda recursive type tanimla
// ad ve cocuklar alanlari olsun
// kok nesnesini bir cocukla tanimla
// kok.ad yazdirÖrnek çözüm
type Dugum = {
ad: string;
cocuklar: Dugum[];
};
const kok: Dugum = { ad: "kok", cocuklar: [{ ad: "cocuk1", cocuklar: [] }] };
console.log(kok.ad);Beklenen çıktı
kok
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Ağaç türünde yaprak (leaf) düğümün cocuklar alanı ne olur?
- null
- Yine kendisi
- Boş dizi [] Doğru cevap
- undefined
Açıklama: Yaprak düğümün çocuğu olmadığı için cocuklar alanı boş dizi [] olur; null veya undefined değil.
2 Çocuklar alanı türü
type Dugum = {
ad: string;
cocuklar: ____[];
};
type Dugum = {
ad: string;
cocuklar: Dugum[];
};
Açıklama: Ağaç türünde cocuklar alanı yine Dugum[] türündedir; her alt düğüm aynı yapıya uyar.
3 Ağaç türü kavramları
| Kavram | Anlamı |
|---|---|
cocuklar: Dugum[] |
Alt düğüm dizisi |
ad: string |
Düğüm adı |
yaprak |
Çocuksuz düğüm |
Dugum |
Kendine başvuran tür |