 |
Veri Yapıları |
Bir önceki yazımızda Linked List Nedir yazısı ile giriş yapmıştık. Bağlı Listeler esnekliklerine bağlı olarak çeşitli yapılarda kullanılabilmektedir. Temelde 3 çeşit Bağlı Liste yapısı kullanılmaktadır.
Bağlı Liste Çeşitleri Nedir?
- Tek Yönlü Bağlı Liste (Singly Linked List)
- Dairesel Bağlı Liste (Circular Linked List)
- Çift Yönlü Bağlı Liste (Doubly Linked List)
Tek Yönlü Bağlı Listeler
Veri Yapıları dersinde ilk olarak Singly Linken List olarak da bilinen, Tek Yönlü Bağlı listeler konusu anlatılır. Bu tipteki bağlı listelerde her düğüm sadece kendisinden sonraki düğümü işaret eder. Aşağıdaki resimde örneğini görebilirsiniz.
 |
Tek Yönlü Bağlı Liste Yapısı |
Yukarıdaki resimde "Header Node" denilen düğüm başlangıç düğümüdür. Kodlama yaparken bu düğümü elimizde tutmamız gerekir. Her düğüm kendisinden sonraki düğümü işaret eder. En sondaki düğüm kendisinden sonra hiçbir düğümü işaret etmez. NULL değerindedir. Eğer bir liste yapısının Tek yönlü olup olmadığını anlamak istiyorsanız Son düğüme bakın, hiçbir yeri işaret etmiyor, NULL değeri almışsa o yapı Tek Yönlü Bağlı liste yapısıdır.
Dairesel Bağlı Liste
Circular Linked List yapısı olarak da bilinir. Bu yapı da aynı tek yönlü bağlı listelere benzer. Tek fark, son düğüm NULL değerini değil, tam aksine ilk düğümü gösterir. Bu yüzden Dairesel Bağlı Liste adını almıştır.
 |
Dairesel Bağlı Liste Yapısı |
Yukarıdaki resimden de görebileceğiniz üzere Tek Yönlü Bağlı Liste ile tamamen aynıdır, tek farkı son düğüm, Head adını verdiğimiz ilk düğümü işaret etmektedir.
Çift Yönlü Bağlı Liste
Doubly Linked List adı da verilen Çift yönlü bağlı liste yapısı ilk başta sizleri zorlayabilir. Ancak aslında bu da çok kolay bir yapıdır. Normal Linked List yapısında her düğüm sonraki düğümü işaret ederken bu yapıda bir değil, iki pointer kullanılır. Pointerlardan birisi sonraki düğümü, birisi de önceki düğümü işaret eder.
 |
Çift Yönlü Bağlı Liste |
Yukarıdaki şekil çift yönlü bağlı liste yapısını göstermektedir. Birinci düğümün Prev yani önceki düğüm pointerı Null'dur. En Son düğümün de Next pointerı Null'dur. Bu yapının en önemli avantajı Traverse yapılırken, yani Linked List elemanları dolaşılırken geriye doğru da işlem yapılmasına olanak vermesidir.
Etiketler: bağlı listeler, Linked List, Linked List nedir, Tek Yönlü Bağlı liste