TREE
Tree merupakan salah satu bentuk struktur data bukan linier yang
terdiri dari root atau akar, dan node-node atau simpul-simpul yang berada di
bawah root. Pohon atau tree dapat kita temukan dalam kehidupan sehari-hari yang
struktur pohon dapat memanfaatkan pointer seperti model linked list. Setiap node
1. Degree (derajat) adalah jumlah edge yang keluar dan masuk dari sebuah
node.
Contoh : node E memiliki in degree 1 dan out degree 2
2. Root (akar) adalah node yang memiliki derajat keluar ≥ 0 dan derajat masuk
= 0.
Contoh : node A adalah root
3. Subtree adalah adalah bagian salah satu node di bawah root sampai ke
bawah.
Contoh :
tree C adalah right subtree dari A, dan
tree B merupakan left subtree dari A
9. Ancestor adalah seluruh node yang terletak sebelum node tertentu dan
terletak pada jalur yang sama.
Contoh : ancestor dari J adalah F, C, A
10. Descendant adalah seluruh node yang terletak sesudah node tertentu dan
terletak pada jalur yang sama.
Contoh : descendant dari F adalah J, K
11. Leaf (daun) adalah semua node yang derajat masuknya 1 dan derajat
keluarnya 0.
Contoh : node D, H, I, J, K, dan G adalah leaf
12. Sibling adalah node yang mempunyai level yang sama dan parent yang
sama.
Contoh : node D adalah sibling dari node E
BINARY TREE
Binary Tree adalah sebuah tree dengan syarat bahwa tiap node hanya
subtree) dan subpohon kanan (right subtree) dan kedua subtree tersebut harus
terpisah, atau dengan kata lain tiap node dalam binary tree hanya boleh memiliki
1. Full Binary Tree : semua node (kecuali leaf) pasti memiliki 2 anak dan subtree
2. Complete Binary Tree : mirip dengan full binary tree, tetapi tiap subtree boleh
memiliki panjang path yang berbeda dan tiap node (kecuali leaf) memiliki 2
anak).
3. Skewed Binary Tree : binary tree yang semua nodenya (kecuali leaf) hanya
TREE TRAVERSAL
Ada tiga pola umum yang digunkaan untuk mengunjungi semua node dalam tree.
dari sebelah kiri, jika sedah jalur kiri sudah tidak ada anak lagi, diteruskan ke jalur
turunan sebelah kanan, terus berlanjut sampai akhir node. Atau pertama menuju
sebelah kiri, diikuti dengan traversal preorder secara recursive ke subtree sebelah
kanan.
Inorder : Melakukan traversal inorder secara recursive pada subtree sebelah kiri,
menuju ke node ROOT, dan terakhir melakukan traversal inorder secara recursive
Terimakasih
Eko Budiarto, S. Kom., MM.
ekobudiarto@pelitabangsa.ac.id
0878.4405.5481