Pohon dan Pohon Biner Anifuddin Azis
Pohon Sebuah pohon adalah himpunan terbatas tidak kosong, dengan elemen yang dibedakan sebagai berikut : 1. Sebuah elemen yang dibedakan dari yang lain yang disebut sebagai AKAR (root) dari pohon 2. Elemen yang lain (jika masih ada) dibagi-bagi menjadi beberapa sub himpunan yang disjoint dan masing-masing sub himpunan tersebut adalah pohon yang disebut sebagai sub pohon dari pohon tersebut.
Beberapa Istilah 1. Hutan Hutan adalah sequence (list) dari pohon 2. Simpul (Node) Simpul adalah elemen dari pohon yang memungkinkan akse pada sub pohon dimana simpul tersebut berfungsi sebagai Akar 3. Cabang Cabang adalah hubungan antara Akar dengan sub pohon 4. Ayah Akar dari sebuah pohon adalah Ayah dari sub pohon 5. Anak Anak dari sebuah pohon adalah Sub pohon 6. Saudara Saudara adalah simpul-simpul yang mempunyai Ayah yang sama
7. Daun Daun adalah simpul terminal dari pohon 7. Daun Daun adalah simpul terminal dari pohon. Semua simpul selain Daun adalah simpul bukan terminal 8. Jalan (Path) Jalan adalah suatu urutan tertentu dari Cabang 9. Derajat Derajat sebuah pohon adalah banyaknya anak dari dari pohon tersebut. Jika sebuah simpul berderajat N disebut pohon N-aire 1 disebut pohon 1-aire/uner 2 disebut pohon 2-aire/biner
10. Tingkat (Level) Level pohon adalah panjangnya jalan dari Akar sampai dengan simpul yang bersangkutan. Panjang dari jalan adalah banyaknya simpul yang dikandung padajalan tersebut. Akar mempunyai tingkat sama dengan 1. Dua buah simpul disebut sebagai Sepupu jika mempunyai tingkat yang sama dalam sebuah pohon. 11. Kedalaman (Tinggi) Kedalaman (Tinggi) dari pohon adalah nilai maksimum dari tingkat simpul yang ada pada pohon tersebut. Kedalaman adalah panjang maksimum jalan dari Akar menuju ke sebuah daun 12. Lebar Lebar sebuah Pohon adalah maksimum banyaknya simpul yang ada pada suatu Tingkat (Level)
Pohon Biner Definisi Sebuah pohon biner (Binary Tree) adalah himpunan terbatas yang : Mungkin kosong atau Terdiri dari sebuah simpul yang disebut sebagai Akar dan dua buah himpunan lain yang disjoint yang merupakan pohon biner yang disebut sebagai Sub Pohon Kiri (Left) dan Sub Pohon Kanan (Right) dari pohon biner tersebut.
Pohon biner merupakan tipe yang sangat penting dari struktur data dan banyak dijumpaidalam berbagai terapan. Karakteristik yang dimiliki oleh pohon biner adalah bahwa setiap simpul paling banyak hanya memiliki dua buah anak, dan mungkin tidak punya anak. Istilah-istilah yang digunakan sama dengan istilah pada pohon secara umum. Jenis Pohon Biner : Pohon condong kiri (skew-left), Pohon condong kanan (skew-right), Pohon biner penuh, Pohon biner seimbang
Terapan Pohon Biner dalam Ilmu Komputer Pohon Ekspresi Pohon Keputusan Kode prefix Kode Huffman Pohon Pencarian Biner (binary search tree)
Binary Search Tree Pohon Biner yang paling penting untuk persoalan yang melakukan operasi : penyisipan, penghapusan, dan pencarian elemen Simpul (Node) pada BST berupa kunci yang membedakan dg simpul lain Pohon Biner dengan setiap kunci diatur dalam urutan tertentu, yaitu : Jika R adalah akar, maka : Semua simpul di sebelah kiri R, memiliki kunci lebih kecil dari kunci R Semua simpul di sebelah kanan R, memiliki kunci lebih besar dari kunci R
Operasi pada BST BuatPohon (P) PohonKosong (P) SisipNode (P,N) HapusNode(P,N) CetakPohon(P) Kunjungan : PreOrder(P), InOrder(P), PostOrder(P)
Deklarasi Type BST Type Infotype = … {terdefinisi, mengandung nilai Kunci} Type node = record <Info : infotype, Left : address, Right: address > Type BinTree : address
Contoh Soal Buatlah BST jika urutan data adalah 70 12 45 89 97 10 78 Buatlah prosedur untuk menghitung selisih jumlah node Sebelah kanan R dan kiri R. R adalah akar BST Tentukan hasil penelusuran preorder dan postorder dari BST pada soal no 1