2 - Linked List Implementation - Data Structure - 2101642440 _ Kevin Yohanes
Linked List merupakan koleksi linear dari data, yang disebut sebagai nodes, dimana setiap node akan menunjuk pada node lain melalui sebuah pointer. Linked List dapat didefinisikan pula sebagai kumpulan nodes yang merepresentasikan sebuah sequence.
Beberapa operasi yang biasanya ada di dalam sebuah linked list adalah:
- Push
Push merupakan sebuah operasi insert
dimana di dalam linked list terdapat 2 kemungkinan insert, yaitu insert
melalui depan (pushDepan) ataupun belakang (pushBelakang). Operasi
pushDepan berarti data yang paling baru dimasukkan akan berada di depan
data lainnya, dan sebaliknya pushBelakang berarti data yang paling baru
akan berada di belakang data lainnya.
Representasinya adalah sebagai berikut:
- pushDepan: 5, 3, 7, 9 maka hasilnya adalah: 9 ->7 ->3 -> 5 -> NULL
- pushBelakang: 5, 3, 7, 9 maka hasilnya adalah: 5 ->3 ->7 ->9 -> NULL
- Pop
Pop, kebalikan dari push, merupakan operasi delete, dimana di dalam linked list memiliki 2 kemungkinan delete, yaitu
melalui depan (popDepan) dan melalui belakang (popBelakang). PopDepan
berarti data yang akan dihapus adalah data paling depan, dan popBelakang
berarti data yang akan dihapus adalah data paling belakang (akhir).
Dalam penerapan code single linked list,
umumnya hanya digunakan pointer head sebagai pointer yang menunjuk pada
linked list. Namun dalam pembahasan artikel ini akan digunakan 1 pointer
tambahan, yakni TAIL untuk menunjuk data terakhir di dalam linked list dalam mempermudah proses pembahasan.
Apabila didefinisikan sebuah linked list sebagai berikut:
Operasi pushDepan dapat dilakukan dengan potongan code berikut ini.
Operasi popDepan dapat dilakukan dengan potongan code berikut ini.
Sedangkan untuk melihat data linked list, berikut ini adalah operasi yang biasanya digunakan:
Ada beberapa macam Linked List:
- Single Linked List
- Polynomial Representation
- Circular Single Linked List
- Doubly Linked List
- Polynomial Representation
- Circular Single Linked List
- Doubly Linked List
- Circular Doubly Linked List
- Header Linked List
- Header Linked List
Single linked list
Sebuah linked list yang hanya memiliki 1 penghubung ke node lain disebut sebagai single linked list.
Doubly Linked List
Doubly linked list memiliki 2 penunjuk arah, yaitu node sebelum (previous/prev) dan node sesudah (next).
Representasi sebuah doubly linked list dapat dilihat pada gambar berikut ini:
.
.
.
.
.
source : http://socs.binus.ac.id/
Komentar
Posting Komentar