Kamis, 24 Desember 2009

Apakah Linked List Itu?

Linked list merupakan salah satu struktur data fundamental dalam membangun program. Sesuai namanya, linked list terdiri dari deretan node (yang berisikan data) dan link ke node lainnya.

Untuk deretan node yang memiliki satu link ke node lain, kita menyebutnya sebagai singly-linked list, atau single linked list. Singly-linked list bisa diilustrasikan dengan barisan di mana setiap anggota barisan (node) berbaris menghadap ke satu arah dan anggota barisan memegang bahu anggota di depannya (link). Anggota paling depan cukup memegang udara kosong (null).



Untuk deretan node yang memiliki dua link ke node-node lain, kita menyebutnya sebagai doubly-linked list atau double linked list. Doubly-linked list bisa diilustrasikan dengan deretan orang di mana tangan kiri setiap anggota memegang tangan kanan anggota di sebelah kiri, dan tangan kanannya memegang tangan kiri anggota di sebelah kanan. Tangan kiri anggota paling kiri memegang udara kosong. Demikian juga dengan anggota paling kanan yang memiliki nasib sama: tangan kanannya memegang udara kosong.


Linked list bisa disusun linear atau circular. Ketika disusun circular, pada singly-linked list, anggota barisan yang tadi kita bahas tidak lagi memegang udara kosong, namun memegang bahu anggota paling belakang. Jadi, tidak pegel. Untuk circular doubly-linked list (atau doubly circularly linked list), nasib anggota paling kiri dan paling kanan juga berubah. Tangan kanan anggota paling kanan memegang tangan kiri anggota paling kiri.


Struktur data fundamental ini sangat berguna. Jadi, mahasiswa ilmu komputer yang mempelajari struktur data ini harus sungguh-sungguh mempelajarinya, walaupun harus berpusing-pusing. Linked list sendiri sudah berumur cukup tua dan dikembangkan sejak tahun 1955-56.

1 komentar: