Matakuliah Tahun : T0034 / Perancangan & Analisis Algoritma : 2008 Pertemuan 6 TREE & BINARY TREE TREE • Terdapat sejumlah node (titik) yang terhubung atas susunan hierarkis parent (orang tua) dan child (anak). • Sebuah child node pasti memiliki satu parent node. • Sebuah parent node bisa memiliki beberapa node lain yang berada di bawahnya (child node). [buku utama, bab 4.4] Bina Nusantara ILUSTRASI TREE [buku utama, ilustrasi 4.6] Bina Nusantara BINARY TREE (1) • Adalah sebuah tree yang setiap node-nya pasti memiliki 0 atau 2 child. • Jumlah maksimal node di level ke-k = 2k-1 • Jumlah maksimal node dalam Binary Tree kedalaman k = 2k-1 [buku utama, bab 4.4.1] Bina Nusantara BINARY TREE (2) • Impementasi bisa dengan array atau linked-list • Operasi yang dapat dilakukan : – – – – Bina Nusantara Memasukkan / menambahkan data Mencari data Menghapus data Sorting data ILUSTRASI BINARY TREE [buku utama, ilustrasi 4.7] Bina Nusantara TREE TRAVERSAL • Adalah proses mengunjungi setiap node dalam tree • Pre-order Traversal – parent–left–right • Level-order Traversal – parent–left–right (per level / kedalaman) • In-order Traversal – left–parent–right (teknik ini hanya berlaku bagi Binary Tree) • Post-order Traversal – left–right–parent [buku utama, bab 9.2] Bina Nusantara PRE-ORDER TRAVERSAL [buku utama, ilustrasi 9.6] Bina Nusantara LEVEL-ORDER TRAVERSAL [buku utama, ilustrasi 9.7] Bina Nusantara IN-ORDER TRAVERSAL [buku utama, ilustrasi 9.8] Bina Nusantara POST-ORDER TRAVERSAL [buku utama, ilustrasi 9.9] Bina Nusantara EULER TOUR TRAVERSAL + 1 16 11 10 x x 12 2 9 15 4 3 13 14 – 2 3 b 5 8 7 6 a Bina Nusantara 1 Arithmetic Expression Tree 2 x (a – 1) + (3 x b) LATIHAN • Uraikan perbedaan implementasi Tree dengan menggunakan array dan pointer! Bina Nusantara REVIEW • Apa yang sudah dipahami? • Apa yang akan dibahas selanjutnya? Bina Nusantara
© Copyright 2024 Paperzz