Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Struktur Data & Algoritma 2009 Bekti - Rita - Sevenhot z z.

Presentasi serupa


Presentasi berjudul: "Struktur Data & Algoritma 2009 Bekti - Rita - Sevenhot z z."— Transcript presentasi:

1 Struktur Data & Algoritma 2009 Bekti - Rita - Sevenhot z z

2 DEFINISI Bekti.Rita.Sevenhot SDA - 2009 DEFINISI HEAP Sebuah complete binary tree dengan ketentuan sebagai berikut : » Perbandingan suatu node dengan suatu nilai node child-nya mempunyai ketentuan tertentu berdasarkan jenis heap-nya » Jenis heap  MAXHEAP (elemen maksimum di root) : A[parent(i)] ≥ A[i] nilai node lebih besar atau sama dengan nilai childnya  MINHEAP (elemen minimum di root) : A[parent(i)] ≤ A[i] nilai node lebih kecil atau sama dengan nilai childnya

3 Bekti.Rita.Sevenhot SDA - 2009 CONTOH HEAP MAXHEAP MINHEAP 12 107 6247 2 47 124810 nilai node ≥ nilai childnyanilai node ≤ nilai childnya

4 Bekti.Rita.Sevenhot SDA - 2009 » Heap adalah suatu priority queue (mempertahankan antrian prioritas). » Dalam antrian prioritas, elemen yang dihapus adalah elemen yang mempunyai prioritas terbesar (atau terkecil, tergantung keperluan), dan elemen inilah yang selalu terletak di akar (root). » Suatu heap sewaktu-waktu dapat berubah, baik itu dikarenakan penambahan elemen (insert) ataupun penghapusan elemen (delete). » Struktur data heap biasanya diimplementasikan dalam array

5 INDEXING Bekti.Rita.Sevenhot SDA - 2009 INDEXING parent(i) = i/2 left_child(i) = 2·i right_child(i) = 2·i + 1 1 2 3 4567

6 OPERASI HEAP Bekti.Rita.Sevenhot SDA - 2009 OPERASI HEAP INSERT Memasukkan data baru ke dalam heap tree Contoh : insert 9 Karena 9 < 10, maka 10 tidak terjadi switch Proses insert berhenti 10 77 1324 9 exchange 9 > 1 10 77 9324 1 exchange 9 > 7 10 97 7324 1

7 OPERASI HEAP Bekti.Rita.Sevenhot SDA - 2009 OPERASI HEAP ROOT DELETION Menghapus root pada heap tree Contoh : delete root 12 710 134 2 2 7 134 Elemen dengan indeks terbesar naik menjadi root HEAPIFY

8 Bekti.Rita.Sevenhot SDA - 2009 HEAPiFY Definisi Proses mengubah binary tree menjadi heap tree Algoritma Heapify(A,i) l ← left [i] r ← right [i] if l ≤ heap-size [A] and A[l] > A[i] then largest ← l else largest ← i if r ≤ heap-size [A] and A[r] > A[largest] then largest ← r if largest ≠ i then exchange A[i] ↔ A[largest] Heapify (A, largest)

9 HEAPIFY Bekti.Rita.Sevenhot SDA - 2009 HEAPiFY Contoh 2 710 134 7 > 2 10 > 7 10 72 137 7 > 2 10 77 132

10 HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 HEAP SORT HEAP SORT ALGORITHM » adalah algoritma sorting yang berdasarkan pada struktur data heap tree » Kompleksitas running time-nye : O(nlog(n)) Langkah : 1.Susun array A kedalam heap tree 2.Ambil root pada heap tree, masukkan ke array 3.Hapus elemen root (dengan mempertahankan sifat heap, lakukan heapify jika tidak memenuhi sifat heap) 4.Lakukan terus (langkah 2-3) hingga tree menjadi kosong

11 HEAP SORT ALGORITHM Bekti.Rita.Sevenhot SDA - 2009 ALGORITHM HEAPSORT (A) BuildHeap (A) for i ← length (A) down to 2 do exchange A[1] ↔ A[i] heap-size [A] ← heap-size [A] - 1 Heapify (A, 1)

12 Bekti.Rita.Sevenhot SDA - 2009 BuildHeap(A) heap-size (A) ← length [A] for i ← floor(length[A]/2) down to 1 do Heapify (A, i) l ← left [i] r ← right [i] if l ≤ heap-size [A] and A[l] > A[i] then largest ← l else largest ← i if r ≤ heap-size [A] and A[r] > A[largest] then largest ← r if largest ≠ i then exchange A[i] ↔ A[largest] Heapify (A, largest)

13 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI Array A = [1, 4, 89, 77, 12, 50, 23] BuildHeap(A)

14 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI Array A = [1, 4, 89, 77, 12, 50, 23] BuildHeap(A) insert 1 1 148977125023

15 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI Array A = [1, 4, 89, 77, 12, 50, 23] BuildHeap(A) insert 1 1 insert 4 1 4 4 1 418977125023

16 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI Array A = [1, 4, 89, 77, 12, 50, 23] BuildHeap(A) insert 1 1 insert 4 1 4 4 1 insert 89 4 189 14 1477125023

17 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI insert 77 89 14 774 1 897741125023 BuildHeap(A)

18 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI insert 77 89 14 774 1 insert 12 89 774 1 12 897741125023 BuildHeap(A)

19 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI insert 77 89 14 774 1 insert 12 89 774 1 12 insert 50 89 774 1 12 50 89 7750 1 12 4 897750112423 BuildHeap(A)

20 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI insert 23 89 7750 1 12 4 897750112423 BuildHeap(A) 23

21 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI 89 7750 1 12 4 772340112489 23 Delete root 23 7750 1 12 4 77 2350 1 12 4 Heapify sorted

22 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI 552341127789 Delete root 77 2350 1 12 4 Heapify sorted 4 2350 1 12 50 234 1 12

23 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI 231241557789 Delete rootHeapify sorted 50 234 1 12 234 1 124 1

24 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI 121423557789 Delete rootHeapify sorted 23 124 1 1 4 14

25 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI 411223557789 Delete root sorted 12 14 4 1

26 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI 141223557789 Delete root sorted 1 Delete root 12 14 4 1

27 SIMULASI HEAP SORT Bekti.Rita.Sevenhot SDA - 2009 SIMULASI 141223557789 sorted Delete root 1 12 14 4 1

28 Selesai & Terima kasih Bekti.Rita.Sevenhot SDA - 2009


Download ppt "Struktur Data & Algoritma 2009 Bekti - Rita - Sevenhot z z."

Presentasi serupa


Iklan oleh Google