Data Structures Pertemuan 4
Tree adalah kumpulan dari satu node atau lebih
Root = node yang berada paling atas dari sebuah tree
Edge = garis yang menghubungkan induk dengan anak induknya
Leaf = sebuah node yang tidak memiliki anak (children)
Sibling= node yang memiliki induk yang sama
Degree= level atau tingkatan
Height = degree paling maksimum sebuah node di dalam tree
DEGREE of TREE = 3
DEGREE of C = 2
HEIGHT = 3
PARENT of C = A
CHILDREN of A = B, C, D
SIBILING of F = G
ANCESTOR of F = A, C
DESCENDANT of C = F, G
TIPE-TIPE TREE
Perfect : masing masing node memiliki 2 anak ; jumlah kiri dan kanan seimbang
Complete : hampir sempurna ; hanya terdapat beberapa node yang tidak memiliki anak
Skewed : setiap node hanya memiliki 1 anak
Balance
- Cara menghitung maksimal node yang dimiliki tree berdasarkan heightnya
[2h+1 -1]
dimana h ialah untuk height da perhitungan height dimulai dari 0.
- Cara menghitung minimal height berdasarkan jumpah node yang dimiliki
2 log(n)
dimana n adalah jumlah node
- Cara menghitung maksimal height berdasarkan jumpah node yang dimiliki
n-1
dimana n adalah jumlah node
p=parent
indeks untuk root selalu 0
indeks untuk anak sebelah kiri menggunakan rumus 2p+1
indeks untuk anak sebelah kanan menggunakan rumus 2p+2
untuk mencari indeks parent dari sebuah node menggunakan rumus (p-1)/2
EXPRESSION TREE CONCEPT
- infix
- prefix
menggunakan konsep (print left right)
selalu dimulai dari print induknya setelah itu,
print anak sebelah kirinya(level 1) (+),
kemudian jika anak sebelah kirinya itu memiliki anak lagi,print lagi anak sebelah kirinya(a),
setelah itu bila sudah tidak memiliki anak, print siblingnya(b)
setelah itu lanjut dengan hal yang sama dilakukan kepada anak sebelah kanan(level 1)(/)
jadi selesaikan terlebih dahulu seluruh edge sebelah kiri jika sudah ter print semua, kembali ke induk kemudian selesaikan edge sebelah kanan, begitu seterusnya.
sehingga menghasilkan *+ab/-cde
- postfix
menggunakan konsep (left right print) dilihat dari degree paling bawah, selalu selesaikan anak sebelah kiri terlebih dahulu kemudian dilanjut dengan anak sebelah kanan barulah naik ke induknya, begitu seterusnya.
sehingga menghasilkan ab+cd-e/*