Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Pertemuan 10-12 Linked list jual [Valdo] Lunatik Chubby Stylus.

Presentasi serupa


Presentasi berjudul: "Pertemuan 10-12 Linked list jual [Valdo] Lunatik Chubby Stylus."— Transcript presentasi:

1 Pertemuan 10-12 Linked list jual [Valdo] Lunatik Chubby Stylus

2 Review array Array memiliki kelemahan diantaranya :
Pada unsorted array, searching lambat Pada sorted array, insert baru lambat Pada kedua jenis array, delete sangat lambat Ukuran array tidak dapat diganti setelah inisalisasi pertama

3 Link list Kumpulan elemen Linier Node/ simpul Isi node: Dinamis Info
Pointer/ alamat simpul berikutnya Dinamis

4 Node / simpul Node / simpul / link berisi :
Info / data Alamat node selanjutnya Sebuah node dalam java dapat diimplementasikan sebagai sebuah class yang berisi Beberapa variable untuk data Satu variable link yang menunjukkan link selanjutnya (self reference) Dalam hal ini objek link tidak berisi data, melainkan hanyalah reference ke link yang lain

5

6 Ilustrasi Singly Linked List
Data 1 Next node Data 2 Data 3 Data 4 NULL

7

8 Class linklist

9 Class linklist

10 Method insertFirst Insert link pada awal list
Posisi yang paling mudah untuk insert link, karena pointer first mengarah ke first link Algoritma Set next pada link baru ke old link first Ganti first mengarah ke link baru

11 Method insertFirst

12

13 Method deleteFirst Kebalikan dari insertFirst Algoritma
Buat link temp dan arahkan ke first Rerouting first ke second link (second link dapat ditemukan dengan melihat ke next dari first) Kembalikan nilai temp atau hapus jika tidak dibutuhkan

14 Method deleteFirst

15

16 Method displayList Menampilkan seluruh isi node/simpul/link dari linked list Algoritma Buat link current dan arahkan ke first Ganti current ke link selanjutnya Gunakan fungsi displayLink dari class link Lakukan hingga current = null (akhir list)

17 Method displayList

18

19 Main method

20 output List (first-->last): {88, 8.99} {66, 6.99} {44, 4.99} {22,
2.99} Deleted {88, 8.99} Deleted {66, 6.99} Deleted {44, 4.99} Deleted {22, 2.99} List (first-->last):

21 Method find Cara kerjanya seperti method displayList() Algoritma
Create link current dan arahkan ke first Ganti current ke link selanjutnya (dengan mengganti current = current.next) Pada setiap link, cek apakah isi data adalah key yang dicari Jika hingga akhir list tanpa ketemu key yang dicari, return null

22 Method find

23 Method delete Seperti method find
Bedanya link tidak Cuma mengarah ke link selanjutnya, tetapi juga perlu menyimpan link sebelumnya (previous) Karena jika dilakukan delete, maka perlu konek link sebelumnya ke next dari link yang didelete

24 Method delete

25

26 Main method 2

27 List (first-->last): {88, 8.99} {66, 6.99} {44, 4.99} {22,
2.99} Found link with key 44 Deleted link with key 66 List (first-->last): {88, 8.99} {44, 4.99} {22, 2.99}

28 Macam-macam List Singly linked list Doubly linked list
Singly circular linked list Doubly circular linked list

29 Single vs doubly

30

31 Insert at beginning

32 Insert at arbitrary position

33 Delete a node

34 Circular Linked List

35 Stack – Linked List Jika sebuah linked list SELALU menambahkan node baru dan menghapus node lama dari salah SATU ujungnya saja (posisi Head ataukah Tail)  STACK. TOP = head untuk single linked list. TOP = tail untuk double linked list. HOW?

36 Push Operation

37 Pop Operation

38 Queue – Linked List Jika sebuah linked list SELALU menambahkan node baru di ujung Tail dan SELALU menghapus node lama dari ujung Head  QUEUE. Front = head. Rear = tail. Single atau Double linked list?

39 Enqueue Operation

40 Dequeue Operation


Download ppt "Pertemuan 10-12 Linked list jual [Valdo] Lunatik Chubby Stylus."

Presentasi serupa


Iklan oleh Google