Untuk
mengimplementasikan algoritma Heap sort pada postingan ane yg ini menggunakan
bahasa pemrograman Java, gunakanlah syntax berikut ini :
Pada syntax tersebut
terdapat 3 buah metode yaitu heapSort(), build_Max_Heap(), dan max_Heapfy().
Dimana metode heapSort adalah metode utama yang digunakan untuk melakukan
sorting nilai pada array angka dengan algoritma Heap Sort, pada baris 10 sampa
33 adalah syntax untuk deklarasi array angka dan memasukkan nilai pada setiap
elemen yang dimiliki array angka lalu pada baris 36 metode build_Max_Heap()
dipanggil fungsi metode ini adalah membangun sebuah Heap tree agar sesuai
dengan kodisi max heap.
Pada
baris 86 terdapat for looping dengan kondisi i = (elements - 1)/2 (index
tengah) dan selama i lebih besar sama dengan 0 maka nilai i akan berkurang 1. Dan
pada baris 89 metode max_Heapfy() dipanggil, fungsi metode max_Heapfy berfungsi
untuk menempatkan nilai pada sebuah index diposisi yang benar agar memenuhi
kondisi max heap. Pada baris 102 dan 103 terdapat deklarasi variabel left dan
right dimana kedua variabel tersebut berisi posisi left dan right child dari
node index lalu pada baris 104 terdapat deklarasi variabel largest yang berisi
posisi index yang memiliki nilai terbesar yang nantinya nilai tersebut akan
dipindahkan ke node index. Dan pada baris 106 sampai 118 terdapat beberapa
kondisi if yang berfungsi untuk membandingkan node mana yang memiliki nilai
tertinggi di antara node index dan left/right child nodenya lalu pada baris 120
terdapat if yang memiliki kodisi jika largest tidak sama dengan index maka
nilai pada node index dan largest bertukar tempat dan metode max_Heapfy()
kembali di panggil sampai kondisi max heap terpenuhi.
Sekian postingan dari ane semoga bermanfaat, jika ada keasalahan mohon dikoreksi dan dimaklumi ya gan :Peace: