Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehAlief Pusamania Telah diubah "9 tahun yang lalu
1
Linear Data Structures (Linked List)
2
Node Link atau pointer data field
3
Pointer Bantu Head/First : Pointer yang menunjuk ke node paling depan. Tail/Last : Pointer yang menunjuk ke node paling belakang.
4
Double Linked List
5
Definisi Linked list dengan dua pointer(next & prev) Pointer next : menghadap ke node yang lebih besar indexnya. Pointer prev : menghadap ke node yang lebih kecil indexnya.
6
Head & Tail Head : menunjuk pada node pertama. Tail : menunjuk pada node terakhir. Pada node pertama, pointer prev mengarah ke null. Pada node terakhir, pointer next mengarah ke null.
7
Gambaran last Data/item prev next
8
Double Representation class Node { Object dData; // data item Node next; // pointer next Node prev; // pointer prev ….. }
9
Operasi Penambahan/penyisipan Penghapusan
10
Penambahan Node
11
Penambahan di awal Penambahan di akhir Penambahan sebelum node tertentu Penambahan setelah node tertentu
12
Asumsi awal
13
Penambahan di Awal Pointer bantu : baru Langkah : – Baru.next = head – head.prev = Baru – head = baru
14
14 Penambahan di Awal(1) last
15
15 Penambahan di Awal(2) last
16
Penambahan di Awal(3) 16 last
17
17 Penambahan di Akhir Asumsi linked list awal : last
18
18 Penambahan di Akhir 1. Baru.prev = last last
19
19 Penambahan di Akhir 2. last.next = Baru last
20
20 Penambahan di Akhir 3. last = Baru last
21
Penambahan Setelah Node x Pointer bantu : after
22
22 Penambahan Setelah Node x Asumsi linked list awal : last
23
23 Penambahan Setelah Node x 1.Node after; after diarahkan ke posisi node 10, bisa dimulai dari head maupun last last
24
24 Penambahan Setelah Node x 2. Baru.prev = after last
25
25 Penambahan Setelah Node x 3. Baru.next = after.next last
26
26 Penambahan Setelah Node x 4. after.next.prev = Baru last
27
27 Penambahan Setelah Node x 5. after.next = Baru last
28
28 Penambahan Setelah Node x Hasil akhir : last
29
29 Penambahan Sebelum Node x Asumsi linked list awal : last
30
30 Penambahan Sebelum Node x 1.Node before; before diarahkan ke posisi node 5, bisa dimulai dari head maupun last last
31
31 Penambahan Sebelum Node x 2. Baru.prev = before.prev last
32
32 Penambahan Sebelum Node x 3. Baru.next = before last
33
33 Penambahan Sebelum Node x 4. before.prev.next = Baru last
34
34 Penambahan Sebelum Node x 5. before.prev = Baru last
35
35 Penambahan Sebelum Node x Hasil akhir : last
36
Penghapusan Node
37
37 Operasi Hapus Node (Delete) Hapus awal (Delete First) Hapus akhir (Delete Last) Hapus Node x
38
38 Asumsi Awal Asumsi linked list awal : last
39
39 Delete First 1. Node hapus; hapus = head; last
40
40 Delete First 2. head.next.prev = null last
41
41 Delete First 3. head = hapus.next last
42
42 Delete First last
43
43 Delete First Hasil akhir : last
44
44 Delete Last Asumsi linked list awal : last
45
45 Delete Last 1. Node hapus; hapus = last; last
46
46 Delete Last 2. last.prev.next = null last
47
47 Delete Last 3. last = hapus.prev last
48
48 Delete Last last
49
49 Delete Last Hasil akhir : last
50
50 Delete Node x Asumsi linked list awal : Misalkan x = 3 last
51
51 Delete Node x 1.Node hapus; hapus diarahkan pada posisi node 3, bisa mulai dari head maupun last last
52
52 Delete Node x 2. hapus.prev.next = hapus.next; last
53
53 Delete Node x 3. hapus.next.prev = hapus.prev; last
54
54 Delete Node x last
55
Circular List
56
Definisi Circular List : list yang berbentuk cirrcular/melingkar, node depan terhubung dengan node paling belakang.
57
Gambaran abcde firstNode
58
Pustaka Sartaj Sahni, Presentation L5 & L10
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.