Sobes.tech
Junior

Hangi veri yapıları mevcuttur?

sobes.tech yapay zeka

AI'dan gelen yanıt

Diziler, listeler, yığınlar, kuyruklar, ağaçlar, grafikler, karma tabloları.

Dizi: Aynı türden öğelerin koleksiyonu, ardışık bellek hücrelerinde saklanır. İndeks ile erişim.

Liste: Öğelerin sıralı koleksiyonu. Tek yönlü veya çift yönlü bağlı olabilir. Ortadaki ekleme/silme, diziden daha verimlidir.

Yığın: LIFO (Last-In, First-Out) yapısı. İşlemler: push (ekle), pop (sondan çıkar), peek (üst öğeye bak).

Kuyruk: FIFO (First-In, First-Out) yapısı. İşlemler: enqueue (sona ekle), dequeue (başlangıçtan çıkar), peek (ilk öğeye bak).

Ağaç: Hiyerarşik veri yapısı. Kök, düğümler, torunlar. Örnek: ikili arama ağacı.

Grafik: Düğüm (knot) kümesi, kenarlarla bağlanmış. Yönlü veya yönsüz, ağırlıklı veya ağırlıksız olabilir.

Karma tablosu: Anahtar-değer çiftleri koleksiyonu. Hızlı erişim için hash fonksiyonu kullanır. Çakışmalar olabilir.

iOS'ta kullanım örnekleri:

  • Diziler: Array
  • Listeler: Dahili sınıf yok, diziler veya özel yapılar temel alınır
  • Yığınlar/Kuyruklar: Diziler veya listeler temel alınarak uygulanır
  • Ağaçlar: Çerçevelerde kullanılır, örneğin UI (görünüm hiyerarşisi)
  • Grafikler: Bağlantıları temsil etmek için, örneğin ağlar
  • Karma tabloları: Dictionary, Set
// Dizi örneği
let numbers = [1, 2, 3, 4, 5]
print(numbers[0]) // İndeks ile erişim

// Sözlük örneği (karma tablo)
let grades = ["Alice": 95, "Bob": 88]
print(grades["Alice"] ?? 0) // Anahtar ile erişim