Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Linear Data Structures (Linked List). Node Link atau pointer data field.

Presentasi serupa


Presentasi berjudul: "Linear Data Structures (Linked List). Node Link atau pointer data field."— Transcript presentasi:

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


Download ppt "Linear Data Structures (Linked List). Node Link atau pointer data field."

Presentasi serupa


Iklan oleh Google