-- Veri Yapıları

Çift Yönlü Bağlı Liste İmplementasyonu

Çift yönlü bağlı listede tek yönlüde olduğu gibi listeyi dolaşmak için dolaşıcı bir düğüm kullanılır.Bu düğüm listeden bağımsız olacağı için kendi üzerine yapılan bir değişiklik asıl listeyi etkilemez.Çift yönlü listede ileri-geri hareket edilebilir ve çift yönlü listedeki bir düğümün yapısı şu şekildedir.

Veri kısmında tutulması istenen veri tutulurken,önceki kısmında bir öncekü düğüm,sonraki kısmında bir sonraki düğüm tutulur.

 

Baştan Ekleme :

  • Yeni düğüm oluşturulur.
  • Oluşturulan yeni düğümün sonraki kısmında head düğümünü tutması sağlanır.
  • Head düğümün önceki kısmında oluşturulan yeni düğümün tutulması sağlanır.
  • Oluşturulan yeni düğümün head düğümü olması sağlanır.

 

 

Sona Ekleme :

  • Yeni düğüm oluşturulur.
  • Oluşturulan yeni düğümün önceki kısmında tail düğümünü tutması sağlanır.
  • Tail düğümünün sonraki kısmında oluşturulan yeni düğümü tutması sağlanır.
  • Oluşturulan yeni düğümün tail düğümü olması sağlanır.

 

Araya Ekleme :

  • Yeni düğüm oluşturulur.
  • Dolaşıcı yardımıyla ilgili düğüme gidilir.
  • Dolaşıcıdan bir önceki düğümün sonraki kısmında yeni oluşturulan düğümü tutması sağlanır.
  • Yeni oluşturulan düğümün önceki kısmında dolaşıcınıdan bir önceki düğümü tutması sağlanır.
  • Dolaşıcının olduğu düğümün önceki kısmında yeni oluşturulan düğümü tutması sağlanır.
  • Yeni oluşturulan düğümün sonraki kısmında dolaşıcının olduğu düğümü tutması sağlanır.

 

 

Baştan silme :

  • Bu işlem basit. Head düğümünün bir sonraki düğüm olması sağlanır.

Sondan Silme :

  • Aynı mantık.Tail düğümünün bir önceki düğüm olması sağlanır.

Aradan Silme :

  • Dolaşıcı yardımıyla silinmek istenen düğüme gidilir.
  • Silinmek istenen düğümün öncesindeki düğümün sonraki kısmında silinmek istenen düğümün sonrasındaki düğümün tutulması sağlanır.
  • Silinmek istenen düğümün sonrasındaki düğümün önceki kısmında silinmek istenen düğümün öncesindeki düğümün tutulması sağlanır.
  • Silinmek istenen düğümün bağları koparılır.(nulla eşitlenir.)

Kodlar :

Program çıktısı :

 ---- Başa eklemeden sonra liste -----   
30 - 20 - 10 - 
 ---- Sona eklemeden sonra liste ----
30 - 20 - 10 - 40 - 50 - 60 - 
 ---- Araya (3. Düğüme) eklemeden sonra liste ----
30 - 20 - 15 - 10 - 40 - 50 - 60 - 
 ----- Aradan (4. Düğüm) silmeden sonra liste ----
30 - 20 - 15 - 40 - 50 - 60 -

 

 

Yorum bırak

Yorum

Webmentions

  • Linked List (Bağlı Liste) Nedir? | Meriç Berber Kişisel Web Sitesi

    […] 2-Doubly Linked List(Tek Yönlü Bağlı Liste) : […]