Tree

Ini tree
Assalamualaikum Wr.Wb

Kali ini kita akan membahas tentang tree.
Apa itu tree? Tree adalah salah satu bentuk struktur data tidak linier yg menggambarkan hubungan yg bersifat hierarkis (one to many) antara elemen-elemen. Dan secara grafis, mirip sebagai pohon walau pohon tsb hanya tampak sbg kumpulan node dari atas kebawah. Puncak pada tree biasa disebut root. berikut adalah gambaran mengenai struktur tree dan juga penjelasannya :
contoh tree
Berikut adalah beberapa istilah dalam tree :

  1. Predesesor : Node yg berada diatas node tertentu (seperti ; B predesesor dari E dan F)
  2. Succesor : Node yg berada dibawah node tertentu (seperti ; E dan F succesor dari B)
  3. Ancestor : Semua node yg terletak sebelum node tertentu dan terletak pada lajur yg sama ( A dan B ancestor dari F)
  4. Parent : Predesesor satu level diatas satu node (B merupakan parent F)
  5. Child : Succesor satu level dibawah satu node (F merupakan child B)
  6. Sibling : Node yg memiliki parent yg sama (E dan F adalah sibling yg mempunyai parent B)
  7. Subtree : Bagian dari tree yg berupa suatu node beserta descendantnya (subtree BEF dan DGH)
  8. Size : Banyaknya node dalam suatu tree
  9. Height : Banyaknya tingkat dalam suatu tree
  10. Root : Node khusus dalam tree yg tidak memiliki predesesor
  11. Leaf : Node dalam tree yg tidak memiliki child(Node EFGH)
  12. Degree : Banyaknya Child yg dimiliki oleh suatu node
Tree dibagi jadi dua yaitu:
  1. Tree statik yg isi node-nya tetap karena strukturnya sudah ditentukan
  2. Tree dinamik, dimana isi node dapat berubah karna proses penambahan dan penghapusan
Representasi binary tree dan penerapan tree kedalam array :
Berikut adalah gambarnya,
Keterangan :
Warna orange adalah left child dan warna kuning adalah right child dan untuk warna hijau adalah root.
cara penulisan tree kedalam array adalah sebagai berikut :

  1. Indeks ke 0 adalah root
  2. Cara hitung posisi indeks untuk left child adalah = 2P + 1 (P adalah indeks dari parent)
  3. Cara hitung posisi indeks untuk right child adalah = 2P + 2 (P adalah indeks dari parent)
Pertama kita hitung dulu tiap node agar tidak salah dalam menaruh array.
  1. A merupakan root jadi langsung kita taruh ke indeks 0
  2. B adalah left child, kita pakai rumus yg sesuai yaitu 2P + 1 jadi 2(0)+1 = 1 dan B masuk ke indeks 1
  3. C itu right child juga pakai rumus yg sesuai yaitu 2P + 2 jadi 2(0)+2 = 2 dan C masuk indeks 2
  4. D => 2(1)+1 = 3 kenapa P menjadi 1? karna P merupakan indeks parent sebelum D yaitu B yg mempunyai indeks 1.
  5. E => 2(1)+2 = 4, E masuk indeks ke 4
  6. F => 2(2)+1 = 5 sama seperti poin nomer ke 4 tadi penjelasannya.
  7. G => 2(2)+2 = 6, G masuk indeks 6
Berikut adalah hasil dari penerapan tree kedalam array :
Sekian penjelasan tentang tree dari saya, jika ada kekurangan mohon maaf.
Sampai jumpa pada materi selanjutnya
BYEE!!!


Komentar

Posting Komentar

Postingan populer dari blog ini

Nested Looping/perulangan bersarang

Stack Dan Queue

Sorting