Linked List


Linked list adalah salah satu struktur data dasar yang sangat fundamental dalam bidang ilmu computer. Dengan menggunakan linked list maka programmer dapat menimpan datanya kapanpun dibuthkan. Linked list mirip dengan array, kecuali pada linked list data yang ingin disimpan dapat dialokasikan secara dinamis pada saat pengoperasian program (run-time). Didalam banyak aplikasi, ukuran dari data tidak diketahui data compile, hal ini bisa merupakan suatu atribut yang baik juga. Setiap node akan berbentuk struct dan memiliki  satu buah field yang bertipe struct yang sama, yang berfungsi sebagai pointer. Dalam menghubungkkan setiap node, kita dapat menggunakan cara first-create-first-access maupun first-create-last-access. Linked list saling terhubung dengan bantuan variable pinter. Masing-masing data dalam linked list disebut dengan node (simpul) yan menempati alokasi memori secar dinamis dan biasanya berupa struct yang terdiri dari beberapa field.

List atau dikenal juga dengan sebutan senarai berantai adalah struktur data yang terdiri dari urutan record data dimana setiap record memiliki field yang menyimpan alamat/referensi dari record selanjutnya (dalam urutan). Elemen data yang dihubungkan dengan link pada Linked List disebut Node. 
Biasanya didalam suatu linked list, terdapat istilah head dan tail:
-Head adalah elemen yang berada pada posisi pertama dalam suatu linked list
-Tail adalah elemen yang berada pada posisi terakhir dalam suatu linked list

Merupakan suatu struktur data pengembangan dari konsep ADT (Abstrak Data Type) yang bersifat dinamis. Linked List dapat dimanfaatkan secara effektif sesuai dengan keperluan. Linked List juga dapat benar – benar dihapus / dibersihkan dari memory.Linked List sebenarnya merupakan suatu typedata tersendiri. Di bahasa Java, Linked List bisa berupa suatu Class ataupun Record. Ciri – ciri utama dari Linked List adalah, dia mempunyai minimal dua elemen utama.

Ada beberapa macam Linked List, yaitu :
Single Linked List
Single Linked List merupakan suatu linked list yang hanya memiliki satu variabel pointer saja. Dimana pointer tersebut menunjuk ke node selanjutnya. Biasanya field pada tail menunjuk ke NULL.
Double Linked List
Double Linked List merupakan suatu linked list yang memiliki dua variabel pointer yaitu pointer yang menunjuk ke node selanjutnya dan pointer yang menunjuk ke node sebelumnya. Setiap head dan tailnya juga menunjuk ke NULL.
Circular Linked List
Circular Linked List merupakan suatu linked list dimana tail (node terakhir) menunjuk ke head (node pertama). Jadi tidak ada pointer yang menunjuk NULL. Ada 2 jenis Circular Linked List, yaitu : Circular Single Linked List dan Circular Double Linked List.
Multiple Linked List
Multiple Linked List merupakan suatu linked list yang memiliki lebih dar 2 buat variabel pointer.


Komentar

Postingan populer dari blog ini

Linked list - Binery Search Tree

Binary Search Tree