Linked List


Pengertian Linked List
bentuk struktur data yang berisi kumpulan data yang tersusun secara sekuensial, saling bersambungan, dinamis dan terbatas adalah senarai berkait. Suatu senarai berkait (linked list) adalah suatu simpul (node) yang dikaitkan dengan simpul yang lain dalam suatu urutan tertentu. Suatu simpul dapat berbentuk suatu struktur atau class. Simpul harus mempunyai satu atau lebih elemen struktur atau class yang berisi data. Secara teori, linked list adalah sejumlah node yang dihubungkan secara linier dengan bantuan pointer.
Bentuk umum :



Operasi - Operasi dalam Linked List :


Operasi - operasi yang pasti dimiliki oleh setiap list adalah sebagai berikut: 

  • Insert / penambahan : untuk menyisipkan elemen kedalam list.
  • Delete / penghapusan : untuk menghapus suatu elemen dalam list.
Dalam implementasinya penambahan dan penghapusan suatu elemendikembangkan kembali sehingga menghasilkan beberapa variasi dalam penggunaanya. Contoh operasi hasil pengembangannya adalah sebagai berikut
  • InsertFirst : penambahan elemen pertama
  • InsertLast : penambahan elemen terakhir
  • InsertAt : penambahan elemen pada index ke-n
  • DeleteFirst : penghapusan elemen pertama
  • DeleteLast : penghapusan elemen terakhir
  • DeleteAt : penghapusan elemen pada index ke-n
Selain operasi utama seperti yang dilakukan sebelumnya, ada pula operasiyang dibuat untuk membantu dalam penggunaan linked list (operasitambahan).Contoh operasi tambahan pada linked list adalah sebagai berikut: 
  • isEmpty : Operasi untuk mengetahui apakah list tersebut kosong atautidak.
  • Inisialisasi : Operasi untuk melakukan inisialisasi (memberi nilai awal) pada list.
  • Allocate : Operasi untuk memesan alamat yang belum digunakan.
  • Deallocate : Operasi untuk membebaskan alamat yang tidak digunakan.
Macam - macam Linked List

Single Linear Linked List
Single linear linked list merupakan jenis linked list yang paling sederhana. Untuk seterusnya, jika dikatakan Linked List maka bentuk inilah yang dimaksud. Linked List ini pada tiap-tiap elemen hanya memiliki 1 pointer (penunjuk) yaitu pointer terhadap elemen selanjutnya.Berikut ini adalah gambaran untuk single linear linked list:



Contoh dalam kehidupan sehari-hari yaitu ketika di bank terdapat suatu antrian, yang datangmengantri lebih dulu akan lebih dulu dilayani sedangkan yang baru datang diharuskan untukmengantri di antrian.

Deklarasi node dengan struct:

Double Linear Linked List
Double linear linked list merupakan jenis linked list yang memiliki 2 buah pointer(penunjuk) yaitu pointer terhadap elemen selanjutnya dan juga pointer terhadap elemensebelumnya. Berikut ini adalah gambaran untuk double linear linked list:



Single Circular Linked List
Single circular linked list merupakan jenis linked list yang memiliki 1 buah pointer(penunjuk) yaitu pointer terhadap elemen selanjutnya (sama seperti single linear linked list),namun pada linked list jenis ini elemen terakhir pada list memiliki pointer menuju elemen pertama dari list tersebut, sehingga terjadi susunan elemen yang melingkar / tidak adaelemen yang bernilai null. Berikut ini adalah gambaran untuk single circular linked list:

Deklarasi Single Linked List Circular:


Double Circular Linked List
Double circular linked list merupakan jenis linked list yang memiliki 2 buah pointer(penunjuk) yaitu pointer terhadap elemen selanjutnya dan juga pointer terhadap elemensebelumnya (sama seperti double linear linked list), namun pada linked list jenis ini elementerakhir pada list memiliki pointer menuju elemen pertama yang menunjukkan elemenselanjutnya dari list tersebut dan elemen pertama memiliki pointer menuju elemen terakhiryang menunjukkan elemen sebelumnya dari elemen pertama adalah elemen terakhir,sehingga terjadi susunan elemen yang melingkar dari dua arah / tidak ada elemen yang bernilai null. Berikut ini adalah gambaran untuk double circular linked list:



                

Comments

Popular Posts