-- Veri Yapıları

Tek Yönlü Bağlı Liste İmplementasyonu

Tek yönlü listede yapılan hemen hemen her işlemde listeyi üzerine işlem yapılacak düğüme kadar dolaşmak gerekir.Bu dolaşma işlemi head düğümünden başlar ve bir dolaşıcı(iterator) yardımı ile yapılır.Dolaşıcı;bizim oluşturduğumuz bir düğümdür,dolaşıcı kullanılmasının sebebi ise dolaşıcıda yapılan herhangi bir değişikliğin asıl listeyi etkilememesini istediğimizdendir.

Tek yönlü bağlı listede bir düğüm iki kısımdan oluşur.Birinci kısım veriyi tutarken ikinci kısım kendisinden gelen sonraki düğümü tutar.

Listenin sonuna ekleme işlemi :

  • Listenin boş olup olmadığı kontrol edilir,boş ise bir düğüm oluşturulur ve bu düğümün head düğümü olması sağlanır.Boş değilse bir sonraki adıma geçilir.
  • Listenin en son düğümüne kadar gidilir.
  • Yeni bir düğüm oluşturulur ve bu düğüm son düğümün sonrasına eklenir.

Listede araya eleman ekleme :

  • Listede eleman eklenecek yere gidilir ve yeni bir düğüm oluşturulur.
  • Gidilen yerden bir önceki düğümün oluşturulan yeni düğümü göstermesi ve oluşturulan yeni düğümün de gidilen yerden bir sonraki düğümü göstermesi sağlanır.
  • Gidilen yerdeki ilk başta mevcut olan bağ koparılır.

Listeden eleman silme :

  • Silinmesi istenen düğüme gidilir.
  • Silinmesi istenen düğümün bir öncesindeki düğümün,bir sonrasındaki düğümü göstermesi sağlanır.
  • Silinmesi istenen düğümün bağları koparılır.

En temel işlemler bunlar.Kodda birkaç işlem daha ekledim.Previus isimli düğüm gidilen düğümden bir öncekini,current isimli düğüm dolaşıcı için kullanılmıştır.

Program Çıktısı :

List: {1} {2} {3} {4} {5} 
deleted: List: {2} {3} {4} {5} 

deleted: List: {3} {4} {5} 

deleted: List: {4} {5} 

deleted: List: {5} 

deleted: List: 

List:

 

 

 

Yorum bırak

Yorum

Webmentions

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

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