STRUKTUR DATA
Tim Struktur Data
Program Studi Teknik Informatika UNIKOM
Ketentuan
Heap
Tree
Complete Binary Tree
(CBT)
Max Heap
Nilai dari simpul >= nilai anaknya.
Min Heap
Max Heap
Min Heap
24
19
13 15
11 5 8
4
Contoh Heap Tree
4
5
13 8
11 19 15
Proses pada Heap
Pembentukan Heap
Pembentukan Heap
Proses sift_down dari simpul
bernomor tengah (banyak simpul/2 atau N/2), menurun sampai simpul pertama.
1 2 3 4
14
11
5
7
5 63
2
1 2 3 54 6 N = 6, Tengah = N/2 = 6/2 = 3
Lakukan reorganisasi pada simpul ke-3 Lakukan reorganisasi pada simpul ke-2 Lakukan reorganisasi pada simpul ke-1
1 2 3 4
14
11
5
7
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
2 3
5
4 6
1 2 3 4
14
11
5
7
5 6
3
14
2
Pengurutan Data Heap
Reorganisasi Heap kembali Tengah = N/2 = 5/2 = 2
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)
Lakukan reorganisasi pada simpul ke-2 Lakukan reorganisasi pada simpul ke-1 1 2 3 5 4 3 5 11 7 2
1 2 3 4
11
5
7
5 6
3
14
2
2
14
11
27
2
2
Pengurutan Data Heap
Reorganisasi Heap kembali Tengah = N/2 = 4/2 = 2
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)
Lakukan reorganisasi pada simpul ke-2 Lakukan reorganisasi pada simpul ke-1 1 2 3 4 3 5 2 7
1 2 3 4
5
7
5 6
3
14
14
2
7
11
2
Pengurutan Data Heap
Reorganisasi Heap kembali Tengah = N/2 = 3/2 = 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)
Lakukan reorganisasi pada simpul ke-1 1
2 3
5 2
3
1 2 3 4
5
7
5 6
3
11
11
2
14
14
2
3
2
7
Pengurutan Data Heap
Reorganisasi Heap kembali Tengah = N/2 = 2/2 = 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)
Lakukan reorganisasi pada simpul ke-1 1
2
2
3
1 2 3 4
5
7
5 6
3
11
11
2
14
14
2
3
2
5
2
7
7
Pengurutan Data Heap
Karena N = 1, maka tidak terjadi Reorganisasi Heap
b. “Pecat” root
c. Banyaknya simpul dikurangi 1
Karena harga N sudah sama dengan nol (0), maka proses pengurutan data selesai
1
2
1 2 3 4
5
7
5 6
3
11
11
2
14
14
2
3
2
5
2
7
7
Latihan
No. Nama
1 Rahmat 2 Didin 3 Ahmad 4 Joned 5 Syahrul 6 Riki
7 Arif 8 Susi 9 Donni 10 Asih
Pembentukan CBT
Rahmat
Ahmad Didin
Joned Syahrul Riki Arif
Susi Donni Asih
Bukan Heap Complete Binary Tree
Rahmat Didin Ahmad Joned Syahrul Riki Arif Susi Donni Asih
1 2 3 4 5 6 7 8 9 10
Pembentukan Heap
Rahmat
Ahmad Didin
Joned Syahrul Riki Arif
Susi Donni Asih
Heap
Syahrul
Asih
Joned
Donni Didin
Asih Rahmat Ahmad
Arif
Rahmat
Pengurutan Heap
Riki
Susi
Bukan Heap
Syahrul Joned
Donni Didin Asih
Ahmad
Arif
Rahmat Syahrul
1 2 3 4 5 6 7 8 9 10
Ahmad Asih Arif Donni Didin Riki Rahmat Susi Joned SyahrulAhmad
Pengurutan Heap
Riki
Susi
Heap
Joned
Donni Didin
Asih Arif
Rahmat SyahrulArif
SyahrulRahmat
Syahrul
1 2 3 4 5 6 7 8 9 10
Pengurutan Heap
Riki
Susi
Bukan Heap
Joned
Donni Didin Asih
Arif
Rahmat
Syahrul Joned
1 2 3 4 5 6 7 8 9 10
Asih Donni Didin Riki Susi Joned SyahrulAhmadAhmad
Arif Rahmat Syahrul
Pengurutan Heap
Riki
Susi
Heap
Donni Didin
Asih Rahmat
Syahrul JonedAsih
Joned Didin
Joned
1 2 3 4 5 6 7 8 9 10
Pengurutan Heap
Riki
Susi Bukan Heap
Donni
Rahmat
Syahrul Asih
Didin
Joned Susi
1 2 3 4 5 6 7 8 9 10
Donni Riki Susi Joned SyahrulAhmadAhmad
Rahmat Syahrul ArifArif
Asih Didin Joned
Pengurutan Heap
Riki
Heap
Donni
Rahmat
Syahrul Didin
Joned Susi Didin
Susi Donni
Susi
1 2 3 4 5 6 7 8 9 10
Donni Riki Susi Joned SyahrulAhmadAhmad Rahmat Syahrul ArifArif
Didin Joned
Susi AsihAsih
Pengurutan Heap
Riki
Bukan Heap
Rahmat
Syahrul Joned
Didin
Donni
Susi
Syahrul
1 2 3 4 5 6 7 8 9 10
Riki Susi Joned SyahrulAhmadAhmad Rahmat Joned Syahrul AsihAsih ArifArif
Didin Donni Susi
Pengurutan Heap
Riki
Heap
Rahmat
Joned Donni
Susi
SyahrulDonni
SyahrulJoned
Syahrul
1 2 3 4 5 6 7 8 9 10
Riki Susi Joned SyahrulAhmadAhmad Rahmat Joned Syahrul AsihAsih ArifArif
Donni Susi
Pengurutan Heap
Riki
Bukan Heap
Rahmat
Susi
Donni
Joned
Syahrul Riki
1 2 3 4 5 6 7 8 9 10
Riki Susi Joned SyahrulAhmadAhmad Rahmat Susi SyahrulDidinDidin AsihAsih ArifArif
Pengurutan Heap
Heap
Rahmat
Susi
Joned
Syahrul Riki Joned
Riki
1 2 3 4 5 6 7 8 9 10
Riki Susi Joned SyahrulAhmadAhmad Rahmat Susi SyahrulDidinDidin AsihAsih ArifArif
Joned Syahrul
Riki DonniDonni
Pengurutan Heap
Bukan Heap
Rahmat
Susi Syahrul Joned
Riki
Syahrul
1 2 3 4 5 6 7 8 9 10
Riki Susi Joned SyahrulAhmadAhmad Rahmat Susi Syahrul DonniDonni SyahrulDidinDidin AsihAsih ArifArif
Joned Riki
Pengurutan Heap
Heap
Rahmat
Susi
Riki
Syahrul Rahmat
Syahrul
1 2 3 4 5 6 7 8 9 10
Riki Susi Joned SyahrulAhmadAhmad Rahmat Susi Syahrul DonniDonni SyahrulDidinDidin AsihAsih ArifArif
Pengurutan Heap
Bukan Heap
Susi
Riki
Rahmat
Syahrul Susi
1 2 3 4 5 6 7 8 9 10
Riki Syahrul SusiAsihAsih JonedArifArif SyahrulAhmadAhmad Susi SyahrulJoned DonniDonni DidinDidin
Riki Donni
Pengurutan Heap
Heap
Riki Syahrul Susi
Riki
Susi
1 2 3 4 5 6 7 8 9 10
Riki Syahrul SusiAsihAsih JonedArifArif SyahrulAhmadAhmad Susi SyahrulJoned DonniDonni DidinDidin
Pengurutan Heap
Bukan Heap
Syahrul Riki
Susi
1 2 3 4 5 6 7 8 9 10
Riki Syahrul SusiAsihAsih JonedArifArif SyahrulAhmadAhmad Susi SyahrulJonedDonni DonniDonni DidinDidin
Syahrul RahmatRahmat Riki Susi Riki
Syahrul
Pengurutan Heap
Heap
Susi
Syahrul
1 2 3 4 5 6 7 8 9 10
Riki Syahrul SusiAsihAsih JonedArifArif SyahrulAhmadAhmad Susi SyahrulJonedDonni DonniDonni DidinDidin
Syahrul RahmatRahmat Syahrul Susi Riki
Susi
Syahrul
Pengurutan Heap
Heap
1 2 3 4 5 6 7 8 9 10
Riki Syahrul SusiAsihAsih JonedArifArif SyahrulAhmadAhmad Susi SyahrulJonedDonni DonniDonni DidinDidin
Syahrul RahmatRiki Rahmat
Susi
Syahrul
Susi Syahrul
Syahrul
Pengurutan Heap
Syahrul
1 2 3 4 5 6 7 8 9 10
Riki Syahrul SusiAsihAsih JonedArifArif SyahrulAhmadAhmad Susi SyahrulJonedDonni DonniDonni DidinDidin
Syahrul RahmatRiki Rahmat SyahrulSusi