LINK LIST
PENDAHULUAN
q
Dalam
suatu linier list kita dapat melakukan operasi penyisipan atau penghapusan atas
elemen-elemennya pada sembarang posisi.
q
Misalkan
ada 1500 item yang merupakan elemen dari
suatu linier list. Jika elemen ke-56 akan kita keluarkan, maka elemen ke-1 s/d elemen ke-55 tidak akan berubah posisinya pada linier
list tersebut. Tetapi elemen ke–57akan menjadi elemen ke-56, elemen ke-58 akan
menjadi elemen ke-57 dst. Selanjutnya, jika kita sisipkan satu elemen pada
posisi setelah elemen ke-41, maka elemen ke-42 s/d elemen ke-1500 akan
berubah posisinya.
q
Untuk
menyatakan keadaan diatas diperlukan
suatu konsep yang berbeda dengan konsep
sekuensial sebelumnya.
Linked list merupakan suatu cara non-sekuensial yang
digunakan untuk merepresentasikan suatu
data.
DEFINISI
q
Linked
list (one way list) adalah suatu
kumpulan elemen data (yang disebut sebagai node) dimana urutannya ditentukan oleh
suatu pointer.
q
Setiap
elemen (node) dari suatu linked list terdiri atas dua bagian,
yaitu:
Ø
INFO
berisi informasi tentang elemne data yang bersangkutan.
Ø
NEXT
(link field/next pointer field), berisi alamat dari elemen (node)
selanjutnya yang dituju.
OPERASI DASAR PADA LINKED LIST
q Ada beberapa aturan yang
didefinisikan pada operasi didalam linked list yaitu:
Ø
Jika
P adalah suatu variabel pointer, maka
nilainya adalah alamat atau lokasi dari
variabel lain yang dituju.
Ø
Operasi
yang didefinisikan pada
suatu variabel pointer adalah:
1.
Test
apakah sama dengan NULL
2.
Test
untuk kesamaan denganvariabel pointer lain
3.
Menetapkan sama dengan NULL
4.
Menetapkan
menuju ke node lain
q
Notasi
yang didefinisikan sehubungan dengan operasi diatas adalah
- NODE (P), artinya node yang ditunjuk oleh pointer P
- INFO (P), artinya nilai INFO dari node yang ditunjuk pointer P
- NEXT (P), artinya hubungan (link) selanjutnya dari node yang ditunjuk oleh pointer P
Tidak ada komentar:
Posting Komentar