Heaps and Tries

Heap

Heap adalah pohon complete binary tree biner yang berdasarkan memenuhi properti heap. Property heaps antara lain :

Min Heap
Setiap node lebih kecil dari masing-masing childnya
Root merupakan node paling kecil, sedangkan node terbesar terletak pada leaf node

           10                     10
         /    \                /      \ 
       20      100            15        30 
      /                      /  \      /  \
    30                     40    50  100   40


Max Heap
Setiap node lebih besar dari masing-masing childnya
Root merupakan node paling besar, sedangkan node terkecil terletak pada leaf node

Image result for Max Heap


Min-Max Heap
Heap dengan Min heap pada level ganjil dan Max heap pada level genap

Image result for Min max heap


Heap dapat diimplementasi dengan array maupun dengan linked list. Aplikasi heap adalah sebagai berikut:

Priority Queue

  1. Selection algorithm
  2. Dijkstra's Algorithm
  3. Prim Algorithm

Implementasi heap menggunakan array :

  • Array dimulai dengan indeks ke 1
  • Rumus umum aplikasi heap dengan array (x adalah current node):
    • Parent(x): x/2
    • Left-child(x): 2*x
    • Right-Child(x): 2*x+1

Tries
Tries atau prefix tree adalah sebuah tree yang tersusun/berurutan pada struktur data yang digunakan untuk menyimpan kumpulan array (biasanya berupa string). 
TRIES berasal dari kata RETRIEVAL, karena tries dapan menemukan sebuat kata dalam kamis dengan hanya dengan menggunakan kata depan dari kata tersebut.

Pengaplikasian Tries
Tries digunakan untuk search dalam sebuah web browser untuk menunjukkan auto-complete saat mencari, contohnya setelah mengetik "goo", system akan menunjukkan beberapa pilihan yang mungkin ingin kita cari seperti "google".

Comments

Popular posts from this blog

Hashing table & Binary Tree

Laporan Akhir Mata Kuliah Human and Computer Interaction Aplikasi Predical

FINAL SUMMARY