a.
Singly
Linked List
Setiap node pada linked list mempunyai field yang berisi
pointer ke node berikutnya dan juga memiliki field yang berisi data. Akhir
linked list ditandai dengan node terakhir akan menunjuk ke null yang akan digunakan
sebagai kondisi berhenti saat pembacaan linked list.
b.
Double
Linked List
Linked list dengan menggunakan pointer, dimana setiap node
memiliki 3 field, yaitu: 1 field pointer yang menunjuk ke pointer berikutnya, 1
field pointer yang menunjuk ke pointer sebelumnya dan field yang berisi data
dari node tersebut. Pointer next dan prev-nya menunjuk ke null.
c.
Single
Circular Linked List
Single Linked List yang pointer next-nya menunjuk ke dirinya
sendiri, jika terdiri dari beberapa node maka pointer terakhirnya akan menunjuk
ke pointer terdepannya.
d.
Double
Circular Linked List
Double Linked List yang pointer next dan prev-nya menunjuk
ke dirinya sendiri secara circular.
Jika
dilihat pengaksesannya, Linear dan Circular Linked List dapat dibedakan sebagai
berikut :
Linear Linked List
|
Circular Linked List
|
Tail.next dihubungkan ke null
|
Tail.next dihubungkan ke head
|
Pada perulangan, akan break pada
now = null
|
Pada perulangan, akan break pada
now = null
|
Method lebih sederhana
|
Method lebih sulit debandingkan dengan
Linear linked list
|
Algoritma akan lebih sulit jika
kita melakukan penyelesaian masalah dengan menggunakan konsep circular queue
|
Akan lebih mudah pada konsep –
konsep tertentu salah satunya seperti konsep queue.
|
Lebih
baik membiasakan diri untuk menggunakan circular linked list, karena akan lebih
membantu mempersingkat langkah – langkahnya. Akan tetapi berbeda lagi jika kita
melihat dari segi kemudahannya. Akan lebih mudah jika kita menggunakan Linear
list karena tidak harus menghubungkan tail dan head.
Tidak ada komentar:
Posting Komentar