Anda di halaman 1dari 14

LINK LIST

Nina Sevani Struktur Data (INF 112) Program Studi Teknik Informatika Ukrida

Tujuan
Mahasiswa memahami konsep linear list. Mahasiswa dapat membedakan antara linear list dan link list. Mahasiswa mengerti jenis-jenis link list. Mahasiswa memahami cara kerja beberapa operasi pada link list.

Linear List
Setiap elemen mempunyai successor yang unik. Contoh linear list : Array

Baba Bibi

Bubu Bebe Bobo

Pembagian linear list : 1. General List : a) Ordered List b) Unordered List (Random List / Chronological List) 2. Restricted List : a) Queue b) Stack
3

Operasi2 Pada Linear List


1. Insert :
a) Kondisi Awal : b) Elemen Baru : c) Kondisi Akhir :
Baba
Bibi

Bubu

Bebe

Baba

Bibi

Bubu

Bebe

2. Delete :
Baba a) Kondisi Awal : b) Elemen yang Dihapus : c) Kondisi Akhir : Baba Bibi Bubu Bubu Bebe

Bibi

Bebe

3. Retrieve
4

Link List
Komponen :
1. Data 2. Pointer

Karakteristik :
1. 2. 3. 4. 5. 6. 7. 8. Struktur data dinamis. Setiap node mempunyai pointer ke node lainnya. Hubungan antar node : 1 to 1. Dikenal istilah : next, prev, NIL, head, tail. Mempunyai node pertama yang unik, disebut : Head. Mempunyai node terakhir yang disebut : Tail. Selain tail, setiap node mempunyai successor. Selain head, setiap node mempunyai predecessor.
5

Properties Link List


Node Elemen pada link list. Count Jumlah elemen pada link list. Pos Posisi suatu elemen pada link list.

Jenis2 Link List


Single Link List (SLL) Double Link List (DLL) Circular Link List (CLL)

Contoh Link List


Empty Link List :
Head

list.head = NIL
Tail

list.tail = NIL

Single Link List dengan 3 node :


Data

Head

Tail NIL
Pointer

Nama | NIM | Semester | Nilai

1 Mahasiswa 2 Nama 2 NIM 2 Semester 2 Nilai


8

Operasi2 Pada Link List


1. 2. 3. 4. 5. 6. 7. Create Insert Delete Update Empty Full Destroy

Operasi Create
Pre : tidak ada. Post : sebuah link list yang masih kosong. Algoritma :
Create_List List.head = NIL List.tail = NIL List.head = List.tail End

10

Operasi Insert
Pre : tidak ada. Post : Jumlah node pada link list bertambah 1.

Operasi Delete
Pre : paling tidak ada 1 node pada link list. Post : Jumlah node pada link list berkurang 1.
11

Operasi Update
Pre : paling tidak ada 1 node pada link list. Post : data pada node di link list berubah.

Operasi Destroy
Pre : sebuah link list. Post : pembebasan memori. Operasi destroy biasanya dilakukan mulai dari Head, secara sekuensial.
12

Operasi Empty

Pre : tidak ada Post : TRUE bila link list masih kosong & FALSE bila link list sudah terisi minimal dengan 1 node. Algoritma : Empty_List (list.count) IF (list.count = 0) THEN Return(True) ELSE Return(False) END IF End

13

Operasi Full
Pre : tidak ada Post : TRUE bila link Algoritma :
Full_list Alokasi memori(node) IF (alokasi memori = berhasil) THEN Return(False) ELSE Return(True) END IF End
14

Anda mungkin juga menyukai