Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
2
Pertemuan 7 PRIORITY QUEUE & HEAP
Matakuliah : T0034 / Perancangan & Analisis Algoritma Tahun : 2008 Pertemuan 7 PRIORITY QUEUE & HEAP
3
Adalah pengembangan lebih lanjut dari konsep Queue
PRIORITY QUEUE Adalah pengembangan lebih lanjut dari konsep Queue yaitu sebuah queue yang setiap komponennya terdiri atas (key, value) Contoh aplikasi Priority Queue Antrian calon penumpang pesawat terbang yang standby Stock market [buku utama, bab 4.3] Bina Nusantara
4
OPERASI PRIORITY QUEUE
InsertItem(k,v) Yaitu memasukkan sebuah elemen ke dalam value di mana k adalah key dan v adalah value. RemoveMin() Mirip operasi POP pada queue biasa, yaitu mendapatkan nilai elemen “paling depan” dalam antrian (dengan memperhatikan prioritasnya). GetMinKey() Mendapatkan prioritas terkecil. GetMinValue() Mendapatkan nilai value terkecil. Size() Mendapatkan ukuran besarnya queue. IsEmpty() Memeriksa apakah queue berisi sesuatu atau tidak. Bina Nusantara
5
IMPLEMENTASI PRIORITY QUEUE
Unsorted List InsertItem O(1) RemoveKey(), GetMinKey() O(n) Sorted List InsertItem O(n) RemoveKey(), GetMinKey() O(1) Bina Nusantara
6
PQ UNTUK SORT Selection Sort Insertion Sort
Adalah variasi dari PQ dengan unsorted list Menambahkan elemen baru memerlukan waktu O(n) Menghilangkan sebuah elemen memerlukan waktu n berarti O(n2) Insertion Sort Adalah variasi dari PQ dengan sorted list Menambahkan elemen baru memerlukan waktu n berarti O(n2) Menghilangkan sebuah elemen memerlukan waktu O(n) Bina Nusantara
7
Heap adalah sebuah Tree yang
Memenuhi syarat Binary Tree secara lengkap Terdiri atas internal node dan external node Setiap internal node menyimpan sebuah nilai Nilai-nilai pada setiap node-nya memenuhi syarat Heap Minimum atau Heap Maksimum [buku utama, bab 4.4.2] Bina Nusantara
8
Pembahasan selanjutnya menggunakan Heap Minimum
MAXIMUM / MINIMUM HEAP Heap Maksimum jika nilai root lebih besar dari nilai left child dan right child Heap Minimum jika nilai root lebih kecil dari nilai left child dan right child Pembahasan selanjutnya menggunakan Heap Minimum Bina Nusantara
9
MINIMUM HEAP [buku utama, ilustrasi 4.8] Bina Nusantara
10
PRIORITY QUEUE PADA HEAP
[buku utama, ilustrasi 4.10] Bina Nusantara
11
OPERASI HEAP InsertNode(k) RemoveNode Empty
Yaitu memasukkan sebuah node baru ke dalam heap. RemoveNode Yaitu mengambil nilai root node pada heap, menghapus root node, kemudian mengatur ulang heap. Empty Bina Nusantara
12
INSERT NODE [buku utama, ilustrasi 4.11] Bina Nusantara
13
REMOVE NODE [buku utama, ilustrasi 4.12] Bina Nusantara
14
HEAP SORT Adalah teknik pengurutan data menggunakan sifat-sifat heap.
Langkah-langkah : Semua bilangan dimasukkan ke heap dengan perintah InsertNode Kemudian heap dikosongkan satu per satu dengan perintah RemoveNode Setiap pengosongan, catat hasilnya Hasilnya, bilangan sudah berurut Misalkan kita memiliki bilangan 21, 45, 15, 30 dan 19 untuk diurutkan. [buku utama, bab 5.2.4] Bina Nusantara
15
[buku utama, ilustrasi 5.3]
ILUSTRASI HEAP SORT [buku utama, ilustrasi 5.3] Bina Nusantara
16
KOMPLEKSITAS HEAP SORT
Kompleksitas algoritma Heap Sort terdiri atas Kompleksitas membangun heap Kompleksitas RemoveNode sampai habis Maka kompleksitas Heap Sort Bina Nusantara
17
LATIHAN Buatlah langkah-langkah menurutkan bilangan-bilangan 34, 15, 23, 9, 41, 26, 39, 11, 7, 28 dengan menggunakan Heap Sort! Bina Nusantara
18
Apa yang sudah dipahami? Apa yang akan dibahas selanjutnya?
REVIEW Apa yang sudah dipahami? Apa yang akan dibahas selanjutnya? Bina Nusantara
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.