🎓 Bounlu tarafından hazırlandı
4.894 görüntülenme

Bağlı Listeler Nedir?

Bağlı listeler, bilgisayar bilimlerinde yaygın olarak kullanılan dinamik veri yapılarından biridir. Dizilerin aksine, elemanları ardışık bellek konumlarında saklamak zorunda değildir.

Kısa cevap

Bağlı liste, her biri bir veri ve bir sonraki elemana işaret eden bir işaretçi (veya referans) içeren düğümlerden oluşan bir dizidir.

01

Adım adım çözümlü örnekler

Basit bir bağlı liste örneği oluşturun.

1. Bir 'Düğüm' (Node) sınıfı tanımlayın: veri ve sonraki düğüme işaretçi içerir. 2. Bir 'Bağlı Liste' (LinkedList) sınıfı tanımlayın: ilk düğüme işaretçi (head) içerir. 3. Başa eleman ekleme fonksiyonu yazın: yeni düğüm oluştur, veri ata, yeni düğümün 'sonraki' işaretçisini mevcut başa ata, başı yeni düğüm yap. 4. Listeyi yazdırma fonksiyonu yazın: baştan başlayarak her düğümün verisini yazdır ve 'sonraki' işaretçisiyle devam et.

Bağlı listeden belirli bir elemanı nasıl silersiniz?

1. Silinecek elemanın değerini bilin. 2. Listenin başından başlayarak ilerleyin. 3. Mevcut düğümün 'sonraki' düğümünün verisini kontrol edin. 4. Eğer 'sonraki' düğüm silinecek elemansa, mevcut düğümün 'sonraki' işaretçisini, silinecek düğümün 'sonraki' işaretçisine bağlayın. 5. Eğer baş eleman silinecekse, listenin başını (head) bir sonraki elemana güncelleyin.
02

Bilgi kartları

03

Mini test

S1.Bağlı listede eleman ekleme işlemi, dizilere göre genellikle daha ______.

Doğru cevap: B. Bağlı listelerde eleman ekleme (özellikle başa veya sona), dizilere göre daha hızlıdır çünkü elemanların kaydırılması gerekmez.

S2.Bağlı listede rastgele erişim (belirli bir indeksteki elemana doğrudan ulaşma) nasıldır?

Doğru cevap: C. Bağlı listede rastgele erişim için baştan başlayıp istenen indekse kadar düğümleri tek tek dolaşmak gerekir, bu da O(n) zaman karmaşıklığına yol açar.

S3.Aşağıdakilerden hangisi bağlı listenin avantajlarından biri DEĞİLDİR?

Doğru cevap: C. Bağlı listelerin rastgele erişimi yavaştır (O(n)), bu avantajlarından biri değildir.
📄Bu konuyu PDF çalışma kağıdı olarak indirKonu özeti + 10 soru + cevap anahtarı — sınıfta paylaş, yazdır.
04

Sık yapılan hatalar

Bağlı listede eleman silerken sadece silinen elemanın işaretçisini güncelleyebilirsin.Doğrusu: Bağlı listede eleman silerken, silinen elemanın önceki düğümünün işaretçisini, silinen elemanın sonraki düğümüne bağlamalısın.

Bağlı listeler diziler gibi ardışık bellek alanında saklanır.Doğrusu: Bağlı listelerdeki düğümler bellekte herhangi bir yerde olabilir ve birbirlerine işaretçiler aracılığıyla bağlanırlar.

05

Sıkça sorulan sorular

Bağlı listeler nerede kullanılır?

Bağlı listeler, dinamik boyut gerektiren uygulamalarda, yığın (stack), kuyruk (queue) gibi veri yapılarının temelini oluşturmada ve bazı algoritmaların (örneğin, graf algoritmaları) uygulanmasında kullanılır.

Diziler ile bağlı listeler arasındaki temel fark nedir?

Diziler sabit boyutludur ve elemanları ardışık bellek konumlarında saklar, bu da rastgele erişimi hızlı yapar. Bağlı listeler ise dinamik boyutludur, elemanları işaretçilerle bağlar ve rastgele erişimi yavaştır ancak ekleme/silme işlemleri daha verimlidir.

Bağlı listenin sonuna eleman eklemek ne kadar sürer?

Tek yönlü bağlı listenin sonuna eleman eklemek için listenin sonuna kadar ilerlemek gerekir, bu nedenle zaman karmaşıklığı O(n)'dir. Ancak, listenin sonunu gösteren ayrı bir işaretçi (tail) tutulursa, bu işlem O(1) zamanında yapılabilir.

İlgili konular