Linked list merupakan struktur data yang
memiliki kelebihan dalam efisiensi memori dan kecepatan dalam menyisipkan data.
Linked list berguna
untuk menyimpan beberapa data dalam memori. Komponen dasar dari suatu list
disebut sebagai node. Sebuah node terdiri dari dua buah bagian. Bagian pertama
adalah bagian yang memuat informasi data, bagian kedua adalah bagian yang
menunjukkan alamat data berikutnya atau disebut juga dengan bagian penunjuk.
Linked
List dengan Pointer
Pascal
menyediakan prosedur standar untuk membuat dan menghapus sebuah variabel
dinamis, yaitu new dan dispose. Jika P telah dideklarasikan
sebagai sebuah variabel pointer bertipe node, maka pernyataan new(P) akan
menciptakan sebuah variabel dinamis baru bertipe node dan menandai lokasinya
dengan pointer P. Sedangkan pernyataan dispose(P) akan mengembalikan ruang yang
digunakan pada lokasi yang ditunjuk P ke sistem komputer, pointer P menjadi
tidak terdefinisikan lagi.
Deklarasi Linked List
dengan Pointer
type
tipeinfo = record
nim : string;
nilai : integer;
end;
tipeptr = ^tipenode;
tipelist = tipeptr;
tipenode = record
info : tipeinfo;
next : tipeptr;
end;
var list : tipelist;
elemen-elemen
list berupa record yang memuat field berisi informasi data serta sebuah field
bertipe pointer yang berisi alamat elemen berikutnya.
Operasi pada Linked
List
1.
Membuat
List
Prosedur
ini berupa prosedur untuk membuat list pertama kali, yaitu mengalokasikan
pointer untuk head. Nilai awal dari list adalah kosong (nill).
Procedure
inisialisasi (var list : tipelist);
Begin
New(list);
List := nill;
End;