Tim Struktur Data Program Studi Teknik Informatika UNIKOM

  • Slides: 49
Download presentation
Tim Struktur Data Program Studi Teknik Informatika UNIKOM

Tim Struktur Data Program Studi Teknik Informatika UNIKOM

Ketentuan Heap Tree Complete Binary Tree (CBT) Tim Struktur Data Max Heap Nilai dari

Ketentuan Heap Tree Complete Binary Tree (CBT) Tim Struktur Data Max Heap Nilai dari simpul >= nilai anaknya. Sehingga nilai paling besar selalu berada di root. Min Heap Nilai dari simpul <= nilai anaknya. Sehingga nilai paling kecil selalu berada di root. Program Studi Teknik Informatika

Contoh Heap Tree Max Heap Min Heap 24 4 19 11 4 Tim Struktur

Contoh Heap Tree Max Heap Min Heap 24 4 19 11 4 Tim Struktur Data 15 5 8 5 13 11 8 19 15 13 24 Program Studi Teknik Informatika

Proses pada Heap Reorganisasi (Restrukturisasi) Heap Pembentukan Heap Penyisipan Heap Penghapusan Heap Pengurutan Data

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

Reorganisasi Heap v Reorganisasi heap terjadi ketika terjadi perubahan terhadap heap, misalnya ketika penyisipan,

Reorganisasi Heap v Reorganisasi heap terjadi ketika terjadi perubahan terhadap heap, misalnya ketika penyisipan, penghapusan, pengupdatean dan pengurutan data. v Proses yang terjadi dalam reorganisasi heap adalah : § Shift-up (Geser ke atas) § Shift-down (Geser ke bawah) www. themegallery. com Company Logo

Shift-Up (Geser Atas) v Shift-Up adalah proses dimana sebuah nilai node bertambah sehingga nilai

Shift-Up (Geser Atas) v Shift-Up adalah proses dimana sebuah nilai node bertambah sehingga nilai prioritasnya lebih besar dari parentnya. v Algoritmanya : § Tukarkan nilai node tersebut dengan nilai parent-nya. § Ulangi langkah a, sampai ditemukan posisi yang tepat (memenuhi kondisi heap) www. themegallery. com Company Logo

Shift-Up (Geser Atas) Heap Awal Perubahan Heap Aturan Heap Dilanggar Tim Struktur Data Program

Shift-Up (Geser Atas) Heap Awal Perubahan Heap Aturan Heap Dilanggar Tim Struktur Data Program Studi Teknik Informatika

Shift-Up (Geser Atas) v Shift-up #1 Masih Melanggar www. themegallery. com Company Logo

Shift-Up (Geser Atas) v Shift-up #1 Masih Melanggar www. themegallery. com Company Logo

Shift-Up (Geser Atas) v Shift-up #2 Masih Melanggar www. themegallery. com Company Logo

Shift-Up (Geser Atas) v Shift-up #2 Masih Melanggar www. themegallery. com Company Logo

Shift-Up (Geser Atas) v Shift-up #3 Sesuai Aturan Heap www. themegallery. com Company Logo

Shift-Up (Geser Atas) v Shift-up #3 Sesuai Aturan Heap www. themegallery. com Company Logo

Shift-Down (Geser Bawah) v Shift-Down adalah proses dimana sebuah nilai node berkurang sehingga nilainya

Shift-Down (Geser Bawah) v Shift-Down adalah proses dimana sebuah nilai node berkurang sehingga nilainya lebih kecil dari anak-anaknya. v 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) www. themegallery. com Company Logo

Shift-Down (Geser Bawah) Heap Awal Perubahan Heap Aturan Heap Dilanggar Tim Struktur Data Program

Shift-Down (Geser Bawah) Heap Awal Perubahan Heap Aturan Heap Dilanggar Tim Struktur Data Program Studi Teknik Informatika

Shift-Down (Geser Bawah) v Shift-down #1 Masih Melanggar www. themegallery. com Company Logo

Shift-Down (Geser Bawah) v Shift-down #1 Masih Melanggar www. themegallery. com Company Logo

Shift-Down (Geser Bawah) v Shift-down #2 Sesuai Aturan Heap www. themegallery. com Company Logo

Shift-Down (Geser Bawah) v Shift-down #2 Sesuai Aturan Heap www. themegallery. com Company Logo

Pembentukan Heap v Pada mulanya jika suatu complete binary tree memiliki nilai secara acak,

Pembentukan Heap v 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 shiftdown dari node tengah (banyaknode/2 atau N/2), menurun sampai node pertama. www. themegallery. com Company Logo

Pembentukan Heap 7 14 7 3 14 11 7 3 25 4 5 6

Pembentukan Heap 7 14 7 3 14 11 7 3 25 4 5 6 14 3 11 7 5 2 14 11 1 2 5 3 7 2 3 4 5 6 Tim Struktur Data 2 14 11 5 1 2 3 4 5 6 Proses shift-down dari simpul bernomor tengah (banyak simpul/2 atau N/2), menurun sampai simpul pertama. N = 6, Tengah = N/2 = 6/2 = 3 Lakukan reorganisasi pada simpul ke-2 Lakukan reorganisasi pada simpul ke-1 1 2 3 Program Studi Teknik Informatika

Penyisipan Data v Algoritma penyisipan data dalam Heap adalah : § Simpan elemen baru

Penyisipan Data v 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 www. themegallery. com Company Logo

Penyisipan Data Sisip 8 si a is n a rg o Re www. themegallery.

Penyisipan Data Sisip 8 si a is n a rg o Re www. themegallery. com Company Logo

Penghapusan Data Algoritma penghapusan heap adalah : a. Ambil Nilai Heap b. Ambil nilai

Penghapusan Data Algoritma penghapusan heap adalah : a. Ambil Nilai Heap b. Ambil nilai pada node terakhir, dan dipakai sebagai nilai root. c. Lakukan proses reorganisasi heap pada root. Umumnya proses yang dilakukan adalah proses sift down. d. Banyak simpul dikurang 1 www. themegallery. com Company Logo

Penghapusan Data Hapus root (10) i s a s ni a rg ot o

Penghapusan Data Hapus root (10) i s a s ni a rg ot o o Re R www. themegallery. com Company Logo

Pengurutan Data Heap Algoritmanya adalah a. N : banyakdata b. Tukarkan node root dengan

Pengurutan Data Heap Algoritmanya adalah a. N : banyakdata b. Tukarkan node root dengan node paling akhir (tempatkan nilai paling besar di akhir, c. Kurangi nilai N dengan 1 (untuk menjaga nilai paling besar tidak usah dilibatkan lagi). d. Lakukan reorganisasi heap dari node tengah sampai node 1. e. Lakukan langkah b sampai d sampai N=0 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Data Heap a. Binary Tree dalam keadaan Max Heap b. “Pecat” root dan

Pengurutan Data Heap a. Binary Tree dalam keadaan Max Heap b. “Pecat” root dan tukarkan dengan simpul pada posisi terakhir c. Banyaknya simpul dikurangi 1 d. Jika N > 1, maka lakukan lagi reorganisasi heap e. 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 2 11 1 2 Tim Struktur Data 5 3 7 2 14 3 4 5 6 Program Studi Teknik Informatika

Pengurutan Data Heap 1 11 2 2 3 7 2 11 5 4 5

Pengurutan Data Heap 1 11 2 2 3 7 2 11 5 4 5 3 2 7 11 7 2 2 11 1 2 Tim Struktur Data 5 3 3 4 11 2 7 14 2 5 Reorganisasi Heap kembali Tengah = N/2 = 5/2 = 2 Lakukan reorganisasi pada simpul ke-1 b. “Pecat” root dan tukarkan dengan simpul pada posisi terakhir c. Banyaknya simpul dikurangi 1 d. Jika N > 1, maka lakukan lagi reorganisasi heap e. Lakukan langkah pada point b sampai point d hingga simpul habis (N=0) 6 Program Studi Teknik Informatika

Pengurutan Data Heap 1 2 7 2 3 5 4 2 3 2 7

Pengurutan Data Heap 1 2 7 2 3 5 4 2 3 2 7 2 3 7 5 7 2 3 1 2 3 4 Tim Struktur Data 11 2 7 14 2 5 Reorganisasi Heap kembali Tengah = N/2 = 4/2 = 2 Lakukan reorganisasi pada simpul ke-1 b. “Pecat” root dan tukarkan dengan simpul pada posisi terakhir c. Banyaknya simpul dikurangi 1 d. Jika N > 1, maka lakukan lagi reorganisasi heap e. Lakukan langkah pada point b sampai point d hingga simpul habis (N=0) 6 Program Studi Teknik Informatika

Pengurutan Data Heap Reorganisasi Heap kembali Tengah = N/2 = 3/2 = 1 Lakukan

Pengurutan Data Heap Reorganisasi Heap kembali Tengah = N/2 = 3/2 = 1 Lakukan reorganisasi pada simpul ke-1 1 5 2 2 3 3 5 2 2 5 3 5 2 7 2 3 1 2 3 4 Tim Struktur Data 11 2 7 14 2 5 b. “Pecat” root dan tukarkan dengan simpul pada posisi terakhir c. Banyaknya simpul dikurangi 1 d. Jika N > 1, maka lakukan lagi reorganisasi heap e. Lakukan langkah pada point b sampai point d hingga simpul habis (N=0) 6 Program Studi Teknik Informatika

Pengurutan Data Heap Reorganisasi Heap kembali Tengah = N/2 = 2/2 = 1 Lakukan

Pengurutan Data Heap Reorganisasi Heap kembali Tengah = N/2 = 2/2 = 1 Lakukan reorganisasi pada simpul ke-1 1 23 2 2 3 23 2 3 5 2 7 2 3 1 2 3 4 Tim Struktur Data 11 2 7 14 2 5 b. “Pecat” root dan tukarkan dengan simpul pada posisi terakhir c. Banyaknya simpul dikurangi 1 d. Jika N > 1, maka lakukan lagi reorganisasi heap e. Lakukan langkah pada point b sampai point d hingga simpul habis (N=0) 6 Program Studi Teknik Informatika

Pengurutan Data Heap Karena N = 1, maka tidak terjadi Reorganisasi Heap 1 2

Pengurutan Data Heap Karena N = 1, maka tidak terjadi Reorganisasi Heap 1 2 b. “Pecat” root c. Banyaknya simpul dikurangi 1 Karena harga N sudah sama dengan nol (0), maka proses pengurutan data selesai 2 2 3 5 2 7 2 3 1 2 3 4 Tim Struktur Data 11 2 7 14 2 5 6 Program Studi Teknik Informatika

Latihan Urutkan data pada tabel di bawah ini secara descending berdasarkan Nama, menggunakan metode

Latihan Urutkan data pada tabel di bawah ini secara descending berdasarkan Nama, menggunakan metode Heap Sort. No. 1 Rahmat 2 Didin 3 Ahmad 4 Joned 5 Syahrul 6 Riki 7 Arif 8 Susi 9 Donni 10 Tim Struktur Data Nama Asih Program Studi Teknik Informatika

Pembentukan CBT Complete Binary Tree Rahmat Didin Joned Ahmad Syahrul Susi Donni Riki Arif

Pembentukan CBT Complete Binary Tree Rahmat Didin Joned Ahmad Syahrul Susi Donni Riki Arif 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

Pembentukan Heap Rahmat Ahmad Asih Didin Joned Donni Rahmat Arif Ahmad Syahrul Asih Didin

Pembentukan Heap Rahmat Ahmad Asih Didin Joned Donni Rahmat Arif Ahmad Syahrul Asih Didin Susi Riki Arif Rahmat Donni Syahrul Asih Joned Heap Ahmad Asih Arif Donni Didin Riki Rahmat Susi Joned Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Syahrul Ahmad Arif Asih Donni Didin Susi Riki Rahmat Joned Syahrul Bukan

Pengurutan Heap Syahrul Ahmad Arif Asih Donni Didin Susi Riki Rahmat Joned Syahrul Bukan Heap Syahrul Ahmad Asih Arif Donni Didin Riki Rahmat Susi Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Syahrul Arif Rahmat Arif Syahrul Asih Donni Didin Susi Riki Rahmat Syahrul

Pengurutan Heap Syahrul Arif Rahmat Arif Syahrul Asih Donni Didin Susi Riki Rahmat Syahrul Joned Heap Syahrul Arif Asih Rahmat Syahrul Arif Donni Didin Riki Rahmat Syahrul Susi Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Joned Arif Asih Donni Rahmat Didin Susi Joned Riki Syahrul Bukan Heap

Pengurutan Heap Joned Arif Asih Donni Rahmat Didin Susi Joned Riki Syahrul Bukan Heap Arif Joned Asih Rahmat Donni Didin Riki Syahrul Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Asih Joned Didin Donni Rahmat Didin Joned Susi Riki Syahrul Heap Asih

Pengurutan Heap Asih Joned Didin Donni Rahmat Didin Joned Susi Riki Syahrul Heap Asih Joned Didin Asih Rahmat Donni Joned Didin Riki Syahrul Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Asih Susi Rahmat Didin Donni Joned Riki Syahrul Bukan Heap Susi Asih

Pengurutan Heap Asih Susi Rahmat Didin Donni Joned Riki Syahrul Bukan Heap Susi Asih Susi Didin Rahmat Donni Joned Riki Syahrul Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Didin Susi Rahmat Donni Susi Didin Donni Susi Joned Riki Syahrul Heap

Pengurutan Heap Didin Susi Rahmat Donni Susi Didin Donni Susi Joned Riki Syahrul Heap Didin Susi Didin Donni Susi Rahmat Donni Susi Joned Riki Syahrul Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Syahrul Didin Donni Rahmat Joned Susi Riki Syahrul Bukan Heap Didin Syahrul

Pengurutan Heap Syahrul Didin Donni Rahmat Joned Susi Riki Syahrul Bukan Heap Didin Syahrul Donni Rahmat Susi Joned Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Syahrul Donni Syahrul Joned Rahmat Syahrul Joned Susi Riki Heap Syahrul Donni

Pengurutan Heap Syahrul Donni Syahrul Joned Rahmat Syahrul Joned Susi Riki Heap Syahrul Donni Syahrul Joned Rahmat Susi Joned Syahrul Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Donni Riki Joned Rahmat Syahrul Susi Riki Bukan Heap Donni Riki Joned

Pengurutan Heap Donni Riki Joned Rahmat Syahrul Susi Riki Bukan Heap Donni Riki Joned Rahmat Susi Syahrul Donni Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Joned Riki Rahmat Syahrul Susi Heap Joned Riki Rahmat Susi Syahrul Donni

Pengurutan Heap Joned Riki Rahmat Syahrul Susi Heap Joned Riki Rahmat Susi Syahrul Donni Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Syahrul Joned Riki Rahmat Syahrul Susi Bukan Heap Joned Syahrul Riki Rahmat

Pengurutan Heap Syahrul Joned Riki Rahmat Syahrul Susi Bukan Heap Joned Syahrul Riki Rahmat Susi Joned Syahrul Donni Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Syahrul Rahmat Riki Rahmat Syahrul Susi Donni Syahrul Joned Donni Riki Syahrul

Pengurutan Heap Syahrul Rahmat Riki Rahmat Syahrul Susi Donni Syahrul Joned Donni Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Rahmat Susi Riki Syahrul Susi Bukan Heap Rahmat Susi Riki Syahrul Susi

Pengurutan Heap Rahmat Susi Riki Syahrul Susi Bukan Heap Rahmat Susi Riki Syahrul Susi Rahmat Donni Syahrul Joned Donni Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Susi Riki Susi Syahrul Susi Rahmat Donni Syahrul Joned Donni Riki Syahrul

Pengurutan Heap Susi Riki Susi Syahrul Susi Rahmat Donni Syahrul Joned Donni Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Riki Syahrul Susi Syahrul Bukan Heap Syahrul Riki Susi Riki Syahrul Susi

Pengurutan Heap Riki Syahrul Susi Syahrul Bukan Heap Syahrul Riki Susi Riki Syahrul Susi Rahmat Donni Syahrul Joned Donni Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Syahrul Susi Syahrul Heap Syahrul Susi Riki Syahrul Susi Rahmat Donni Syahrul

Pengurutan Heap Syahrul Susi Syahrul Heap Syahrul Susi Riki Syahrul Susi Rahmat Donni Syahrul Joned Donni Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Syahrul Susi Syahrul Riki Syahrul Susi Rahmat Donni Syahrul Joned Donni Riki

Pengurutan Heap Syahrul Susi Syahrul Riki Syahrul Susi Rahmat Donni Syahrul Joned Donni Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Pengurutan Heap Syahrul Susi Syahrul Riki Syahrul Susi Rahmat Donni Syahrul Joned Donni Riki

Pengurutan Heap Syahrul Susi Syahrul Riki Syahrul Susi Rahmat Donni Syahrul Joned Donni Riki Syahrul Didin Asih Susi Arif Joned Ahmad Syahrul 1 2 3 4 5 6 7 8 9 10 Tim Struktur Data Program Studi Teknik Informatika

Tim Struktur Data Program Studi Teknik Informatika - UNIKOM

Tim Struktur Data Program Studi Teknik Informatika - UNIKOM