Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehYuliana Setiabudi Telah diubah "6 tahun yang lalu
1
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Heap Tim Struktur Data Program Studi Teknik Informatika UNIKOM
2
Ketentuan Heap Tree Min Heap Complete Binary Tree (CBT)
Nilai dari simpul <= nilai anaknya. Sehingga nilai paling kecil selalu berada di root. Max Heap Nilai dari simpul >= nilai anaknya. Sehingga nilai paling besar selalu berada di root. Tim Struktur Data Program Studi Teknik Informatika
3
Contoh Heap Tree Max Heap Min Heap 24 4 19 15 5 8 11 5 8 13 11 19 15
Tim Struktur Data Program Studi Teknik Informatika
4
Proses pada Heap Reorganisasi (Restrukturisasi) Heap Pembentukan Heap
Penyisipan Heap Penghapusan Heap Pengurutan Data pada Heap (Heap Sort) Tim Struktur Data Program Studi Teknik Informatika
5
Reorganisasi Heap Reorganisasi heap terjadi ketika terjadi perubahan terhadap heap, misalnya ketika penyisipan, penghapusan, pengupdatean dan pengurutan data. Proses yang terjadi dalam reorganisasi heap adalah : Shift-up (Geser ke atas) Shift-down (Geser ke bawah) Company Logo
6
Shift-Up (Geser Atas) Shift-Up adalah proses dimana sebuah nilai node bertambah sehingga nilai prioritasnya lebih besar dari parentnya. Algoritmanya : Tukarkan nilai node tersebut dengan nilai parent-nya. Ulangi langkah a, sampai ditemukan posisi yang tepat (memenuhi kondisi heap) Company Logo
7
Shift-Up (Geser Atas) Heap Awal Perubahan Heap Aturan Heap Dilanggar
Tim Struktur Data Program Studi Teknik Informatika
8
Shift-Up (Geser Atas) Shift-up #1 Masih Melanggar www.themegallery.com
Company Logo
9
Shift-Up (Geser Atas) Shift-up #2 Masih Melanggar www.themegallery.com
Company Logo
10
Shift-Up (Geser Atas) Shift-up #3 Sesuai Aturan Heap
Company Logo
11
Shift-Down (Geser Bawah)
Shift-Down adalah proses dimana sebuah nilai node berkurang sehingga nilainya lebih kecil dari anak-anaknya. Algoritmanya : Tukarkan nilai simpul yang berubah dengan nilai dari child yang mempunyai prioritas terbesar. Ulangi langkah a, sampai ditemukan posisi yang tepat (memenuhi kondisi heap) Company Logo
12
Shift-Down (Geser Bawah)
Heap Awal Perubahan Heap Aturan Heap Dilanggar Tim Struktur Data Program Studi Teknik Informatika
13
Shift-Down (Geser Bawah)
Masih Melanggar Company Logo
14
Shift-Down (Geser Bawah)
Sesuai Aturan Heap Company Logo
15
Pembentukan Heap Pada mulanya jika suatu complete binary tree memiliki nilai secara acak, maka langkah yang harus dilakukan agar binary tree tersebut dapat disebut sebagai heap adalah dengan melakukan proses shift-down dari node tengah (banyaknode/2 atau N/2), menurun sampai node pertama. Company Logo
16
Pembentukan Heap 7 3 2 14 11 5 1 2 3 4 5 6 1 Proses shift-down dari simpul bernomor tengah (banyak simpul/2 atau N/2), menurun sampai simpul pertama. 14 7 2 3 11 14 3 7 2 5 N = 6, Tengah = N/2 = 6/2 = 3 4 5 6 Lakukan reorganisasi pada simpul ke-3 14 3 11 7 2 5 Lakukan reorganisasi pada simpul ke-2 Lakukan reorganisasi pada simpul ke-1 14 11 5 3 7 2 1 2 3 4 5 6 Tim Struktur Data Program Studi Teknik Informatika
17
Penyisipan Data Algoritma penyisipan data dalam Heap adalah :
Simpan elemen baru tersebut setelah data paling akhir (tree dengan level paling bawah dan pada posisi sebelah kanan dari data terakhir atau jika level telah penuh, maka simpan data baru tersebut dalam level baru). Lakukan reorganisasi heap pada node baru tersebut. Proses yang biasanya dipakai adalah proses shift-up. Banyak simpul ditambah 1 Company Logo
18
Penyisipan Data Sisip 8 Reorganisasi Company Logo
19
Penghapusan Data Algoritma penghapusan heap adalah : Ambil Nilai Heap
Ambil nilai pada node terakhir, dan dipakai sebagai nilai root. Lakukan proses reorganisasi heap pada root. Umumnya proses yang dilakukan adalah proses sift down. Banyak simpul dikurang 1 Company Logo
20
Penghapusan Data Reorganisasi Root Hapus root (10)
Company Logo
21
Pengurutan Data Heap Algoritmanya adalah N : banyakdata
Tukarkan node root dengan node paling akhir (tempatkan nilai paling besar di akhir, Kurangi nilai N dengan 1 (untuk menjaga nilai paling besar tidak usah dilibatkan lagi). Lakukan reorganisasi heap dari node tengah sampai node 1. Lakukan langkah b sampai d sampai N=0 Tim Struktur Data Program Studi Teknik Informatika
22
Pengurutan Data Heap Binary Tree dalam keadaan Max Heap “Pecat” root dan tukarkan dengan simpul pada posisi terakhir Banyaknya simpul dikurangi 1 Jika N > 1, maka lakukan lagi reorganisasi heap Lakukan langkah pada point b sampai point d hingga simpul habis (N=0) 1 14 2 2 3 11 5 4 5 6 3 7 2 14 14 2 11 5 3 7 14 2 1 2 3 4 5 6 Tim Struktur Data Program Studi Teknik Informatika
23
Pengurutan Data Heap Reorganisasi Heap kembali Tengah = N/2 = 5/2 = 2 “Pecat” root dan tukarkan dengan simpul pada posisi terakhir Banyaknya simpul dikurangi 1 Jika N > 1, maka lakukan lagi reorganisasi heap Lakukan langkah pada point b sampai point d hingga simpul habis (N=0) 1 11 2 2 Lakukan reorganisasi pada simpul ke-2 2 3 Lakukan reorganisasi pada simpul ke-1 11 7 2 5 4 5 3 2 7 11 14 11 2 2 11 7 2 5 3 11 2 7 14 2 1 2 3 4 5 6 Tim Struktur Data Program Studi Teknik Informatika
24
Pengurutan Data Heap Reorganisasi Heap kembali Tengah = N/2 = 4/2 = 2 “Pecat” root dan tukarkan dengan simpul pada posisi terakhir Banyaknya simpul dikurangi 1 Jika N > 1, maka lakukan lagi reorganisasi heap Lakukan langkah pada point b sampai point d hingga simpul habis (N=0) 1 2 2 7 Lakukan reorganisasi pada simpul ke-2 2 3 Lakukan reorganisasi pada simpul ke-1 3 2 7 5 4 3 2 7 11 14 7 2 2 3 2 7 5 3 2 7 11 2 7 14 2 1 2 3 4 5 6 Tim Struktur Data Program Studi Teknik Informatika
25
Pengurutan Data Heap Reorganisasi Heap kembali Tengah = N/2 = 3/2 = 1 “Pecat” root dan tukarkan dengan simpul pada posisi terakhir Banyaknya simpul dikurangi 1 Jika N > 1, maka lakukan lagi reorganisasi heap Lakukan langkah pada point b sampai point d hingga simpul habis (N=0) 1 2 5 2 Lakukan reorganisasi pada simpul ke-1 2 3 3 5 2 5 7 11 14 2 2 5 3 5 5 2 3 2 7 11 2 7 14 2 1 2 3 4 5 6 Tim Struktur Data Program Studi Teknik Informatika
26
Pengurutan Data Heap Reorganisasi Heap kembali Tengah = N/2 = 2/2 = 1 “Pecat” root dan tukarkan dengan simpul pada posisi terakhir Banyaknya simpul dikurangi 1 Jika N > 1, maka lakukan lagi reorganisasi heap Lakukan langkah pada point b sampai point d hingga simpul habis (N=0) 1 2 2 3 Lakukan reorganisasi pada simpul ke-1 2 3 2 3 5 7 11 14 3 2 2 3 3 2 5 5 2 3 2 7 11 2 7 14 2 1 2 3 4 5 6 Tim Struktur Data Program Studi Teknik Informatika
27
Pengurutan Data Heap Karena N = 1, maka tidak terjadi Reorganisasi Heap “Pecat” root Banyaknya simpul dikurangi 1 Karena harga N sudah sama dengan nol (0), maka proses pengurutan data selesai 1 2 2 3 5 7 11 14 2 3 3 2 5 2 5 3 2 7 11 2 7 14 2 1 2 3 4 5 6 Tim Struktur Data Program Studi Teknik Informatika
28
Latihan Urutkan data pada tabel di bawah ini secara descending berdasarkan Nama, menggunakan metode Heap Sort. No. Nama 1 Rahmat 2 Didin 3 Ahmad 4 Joned 5 Syahrul 6 Riki 7 Arif 8 Susi 9 Donni 10 Asih Tim Struktur Data Program Studi Teknik Informatika
29
Pembentukan CBT Complete Binary Tree Bukan Heap Rahmat Didin Ahmad
Joned Syahrul Riki Arif Susi Donni Asih Bukan Heap Rahmat Didin Ahmad Joned Syahrul Riki Arif Susi Donni Asih 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika
30
Pembentukan Heap Heap Ahmad Rahmat Didin Asih Arif Rahmat Ahmad Donni
Joned Asih Didin Syahrul Riki Rahmat Arif Susi Joned Donni Asih Syahrul Heap 1 2 3 4 5 6 7 8 9 10 Ahmad Asih Arif Donni Didin Riki Rahmat Susi Joned Syahrul Tim Struktur Data Program Studi Teknik Informatika
31
Pengurutan Heap Bukan Heap Ahmad Syahrul Asih Arif Donni Didin Riki
Rahmat Susi Joned Syahrul Bukan Heap 1 2 3 4 5 6 7 8 9 10 Ahmad Ahmad Syahrul Asih Arif Donni Didin Riki Rahmat Susi Joned Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
32
Pengurutan Heap Heap Arif Syahrul Asih Arif Syahrul Rahmat Donni Didin
Riki Rahmat Syahrul Susi Joned Heap 1 2 3 4 5 6 7 8 9 10 Ahmad Syahrul Arif Asih Rahmat Syahrul Arif Donni Didin Riki Syahrul Rahmat Susi Joned Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
33
Pengurutan Heap Bukan Heap Arif Joned Asih Rahmat Donni Didin Riki
Syahrul Susi Joned Bukan Heap 1 2 3 4 5 6 7 8 9 10 Arif Ahmad Arif Joned Asih Rahmat Donni Didin Riki Syahrul Susi Joned Arif Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
34
Pengurutan Heap Heap Joned Asih Didin Joned Asih Rahmat Donni Didin
Riki Syahrul Susi Heap 1 2 3 4 5 6 7 8 9 10 Arif Ahmad Asih Joned Joned Didin Asih Rahmat Donni Didin Joned Riki Syahrul Susi Joned Arif Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
35
Pengurutan Heap Bukan Heap Susi Asih Didin Rahmat Donni Joned Riki
Syahrul Bukan Heap Susi 1 2 3 4 5 6 7 8 9 10 Asih Arif Ahmad Susi Asih Didin Rahmat Donni Joned Riki Syahrul Susi Asih Joned Arif Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
36
Pengurutan Heap Heap Susi Didin Didin Donni Susi Rahmat Susi Donni
Joned Riki Syahrul Heap 1 2 3 4 5 6 7 8 9 10 Asih Arif Ahmad Susi Didin Didin Donni Susi Rahmat Donni Susi Joned Riki Syahrul Asih Susi Arif Joned Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
37
Pengurutan Heap Bukan Heap Didin Syahrul Donni Rahmat Susi Joned Riki
1 2 3 4 5 6 7 8 9 10 Didin Asih Arif Ahmad Syahrul Didin Donni Rahmat Susi Joned Riki Didin Syahrul Susi Asih Joned Arif Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
38
Pengurutan Heap Heap Syahrul Donni Joned Donni Syahrul Rahmat Susi
Riki Heap 1 2 3 4 5 6 7 8 9 10 Didin Asih Arif Ahmad Donni Syahrul Syahrul Joned Donni Rahmat Susi Joned Syahrul Riki Didin Syahrul Susi Asih Joned Arif Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
39
Pengurutan Heap Bukan Heap Riki Donni Joned Rahmat Susi Syahrul Riki 1
2 3 4 5 6 7 8 9 10 Donni Didin Asih Arif Ahmad Riki Donni Joned Rahmat Susi Syahrul Donni Riki Didin Syahrul Susi Asih Joned Arif Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
40
Pengurutan Heap Heap Riki Joned Joned Riki Rahmat Susi Syahrul 1 2 3 4
5 6 7 8 9 10 Donni Didin Asih Arif Ahmad Joned Riki Joned Riki Rahmat Susi Syahrul Donni Riki Didin Syahrul Susi Asih Joned Arif Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
41
Pengurutan Heap Bukan Heap Syahrul Joned Riki Rahmat Susi Syahrul 1 2
3 4 5 6 7 8 9 10 Joned Donni Didin Asih Arif Ahmad Joned Syahrul Riki Rahmat Susi Joned Syahrul Donni Riki Didin Syahrul Susi Asih Arif Joned Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
42
Pengurutan Heap Heap Rahmat Syahrul Riki Syahrul Rahmat Susi 1 2 3 4 5
6 7 8 9 10 Donni Donni Didin Asih Arif Ahmad Rahmat Syahrul Riki Syahrul Rahmat Susi Syahrul Joned Donni Riki Didin Syahrul Susi Asih Joned Arif Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
43
Pengurutan Heap Bukan Heap Susi Rahmat Riki Syahrul Susi 1 2 3 4 5 6 7
8 9 10 Rahmat Donni Donni Didin Asih Arif Ahmad Susi Rahmat Riki Syahrul Susi Rahmat Joned Syahrul Donni Riki Didin Syahrul Susi Asih Arif Joned Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
44
Pengurutan Heap Heap Riki Susi Riki Susi Syahrul 1 2 3 4 5 6 7 8 9 10
Rahmat Donni Donni Didin Asih Arif Ahmad Riki Susi Riki Susi Syahrul Susi Rahmat Joned Syahrul Donni Riki Didin Syahrul Asih Susi Arif Joned Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
45
Pengurutan Heap Bukan Heap Syahrul Riki Susi Syahrul 1 2 3 4 5 6 7 8 9
10 Riki Rahmat Donni Donni Didin Asih Arif Ahmad Riki Syahrul Susi Riki Syahrul Rahmat Susi Joned Syahrul Donni Riki Didin Syahrul Asih Susi Arif Joned Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
46
Pengurutan Heap Heap Syahrul Susi Syahrul Susi 1 2 3 4 5 6 7 8 9 10
Riki Rahmat Donni Donni Didin Asih Arif Ahmad Susi Syahrul Susi Syahrul Syahrul Rahmat Susi Joned Syahrul Donni Riki Didin Syahrul Asih Susi Arif Joned Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
47
Pengurutan Heap Heap Syahrul Susi Syahrul 1 2 3 4 5 6 7 8 9 10 Susi
Riki Rahmat Donni Donni Didin Asih Arif Ahmad Syahrul Susi Susi Syahrul Syahrul Rahmat Susi Joned Syahrul Donni Riki Didin Syahrul Susi Asih Arif Joned Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
48
Pengurutan Heap Syahrul 1 2 3 4 5 6 7 8 9 10 Syahrul Susi Riki Rahmat
Donni Donni Didin Asih Arif Ahmad Syahrul Syahrul Susi Syahrul Rahmat Susi Joned Syahrul Donni Riki Didin Syahrul Asih Susi Joned Arif Ahmad Syahrul Tim Struktur Data Program Studi Teknik Informatika
49
Program Studi Teknik Informatika - UNIKOM
Terima Kasih Tim Struktur Data Program Studi Teknik Informatika - UNIKOM
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.