Heap,Tries
Heap adalah pohon complete binary tree biner yang memenuhi properti heap sebagai berikut:1. Min Heap:-Unsur setiap node lebih kecil dari elemen anak nya.-Elemen terkecil terletak pada root.-Unsur terbesar terletak di suatu tempat di salah satu leaf.
Insertion:
Jika kita akan menginsert sebuah angka, maka kita harus meletakkan node tersebut di tempat setelah terakhir. Lalu, kita cek kondisi dengan parent nya, jika node tersebut lebih besar dari parent nya maka di swap, lakukan cara tersebut sampai root.
contoh :
Deletion:
Jika kita akan menghapus suatu node, maka node yang akan menggantikan adalah node yang paling terakhir. Setelah itu cek kondisi dengan child nya, jika node tersebut lebih besar dari child nya maka di swap, lakukan cara tersebut sampai leaf, dihentikan jika current node bernilai lebih kecil dari kedua anaknya atau current node adalah leaf.
Jika kita akan menghapus suatu node, maka node yang akan menggantikan adalah node yang paling terakhir. Setelah itu cek kondisi dengan child nya, jika node tersebut lebih besar dari child nya maka di swap, lakukan cara tersebut sampai leaf, dihentikan jika current node bernilai lebih kecil dari kedua anaknya atau current node adalah leaf.
2. Max Heap:
-Unsur setiap node lebih besar dari elemen anak nya.
-Elemen terbesar terletak pada root
-Unsur terkecil terletak di suatu tempat di salah satu leaf.
-Unsur setiap node lebih besar dari elemen anak nya.
-Elemen terbesar terletak pada root
-Unsur terkecil terletak di suatu tempat di salah satu leaf.
Operasi pada Max-Heap hampir sama dengan operasi pada Min-Heap. Yang membedakan hanya konsepnya saja (data terbesar ada pada root, parent lebih besar dari anak).
3. MinMax Heap:
Konsep Min Max Heap adalah level root akan bernilai minimum, selanjutnya akan bernilai maximum, dan seterusnya. Nilai terkecil berada di root dan nilai terbesar berada di salah satu node pada level setelah root. Level min hanya dapat dibandingkan dengan level min, dan sebaliknya.
Contoh:
3. MinMax Heap:
Konsep Min Max Heap adalah level root akan bernilai minimum, selanjutnya akan bernilai maximum, dan seterusnya. Nilai terkecil berada di root dan nilai terbesar berada di salah satu node pada level setelah root. Level min hanya dapat dibandingkan dengan level min, dan sebaliknya.
Contoh:




No comments:
Post a Comment