Pohon Tree Struktur Data

2.3.2 Pohon Tree

Struktur data pohon tree memegang peranan yang cukup penting, karena struktur ini biasa digunakan terutama untuk menyajikan data yang mengandung hubungan hirarki antara elemen-elemennya. Tree atau pohon adalah salah satu graph terhubung yang tidak mengandung sirkuit. Karena merupakan graph terhubung, maka pada pohon selalu terdapat jalur path yang menghubungkan setiap dua simpul dalam pohon.

2.3.2.1 Pohon Biner Binary Tree

Pohon biner adalah pohon yang setiap simpul cabangnya mempunyai paling banyak dua buah anak yang disebut anak kiri left child dan anak kanan right child. Pohon yang akarnya adalah anak kiri disebut subpohon kiri left subtree, sedangkan pohon yang akarnya adalah anak kanan disebut subpohon kanan right subtree. Subpohon disebut juga cabang. Pohon biner merupakan struktur pohon yang penting dalam ilmu komputer. Terapan pohon biner di dalam ilmu komputer sangat banyak, diantaranya pohon ekspresi expression tree, pohon keputusan decision tree, kode prefix prefix code, kode Huffman Huffman code dan pohon pencarian biner binary search tree. Pada bagian ini akan dibahas bagaimana cara menyusun sebuah pohon biner yang apabila dikunjungi preorder akan menghasilkan notasi prefix, kunjungan inorder akan menghasilkan notasi infix dan kunjungan postorder akan menghasilkan notasi postfix. Melakukan kunjungan juga memerlukan bantuan struktur data tumpukan untuk membentuk pohon biner. Dengan menggunakan pohon biner, operator akan selalu diletakkan sebagai akar dan operand selalu diletakkan sebagai daun. Dengan demikian, simpul yang berisi operator selalu mempunyai dua buah cabang dan simpul yang berisi operand selalu tidak mempunyai cabang, baik cabang kiri ataupun cabang kanan. Universitas Sumatera Utara Karakteristik yang dimiliki oleh pohon biner yaitu bahwa setiap simpul paling banyak hanya mempunyai dua buah anak. Dengan kata lain, derajat tertinggi dari setiap simpul dalam pohon biner adalah dua. Karakteristik lain adalah bahwa dalam pohon biner dimungkinkan tidak mempunyai simpul Santosa, 1992. Gambar 2.10 menunjukkan contoh suatu pohon biner. Gambar 2.10 Pohon Biner

2.3.2.2 Pohon Ekspresi

Pohon ekspresi adalah pohon biner dengan daun menyatakan operand dan simpul dalam termasuk akar menyatakan operator. Tanda kurung tidak lagi diperlukan bila suatu ekspresi aritmatik direpresentasikan sebagai pohon biner. Sebagai contoh, ekspresi a+bcd+e dinyatakan dalam pohon biner pada Gambar 2.11. Gambar 2.11 Pohon Ekspresi + a b c + d e A G F E D C B Universitas Sumatera Utara Daun menyatakan operand a, b, c, d dan e sedangkan simpul termasuk akar menyatakan operator +, dan . Pohon ekspresi digunakan oleh compiler bahasa tingkat tinggi untuk mengevaluasi ekspresi yang ditulis dalam notasi infix, prefix polish notation dan postfix reverse polish notation. Dalam notasi infix, operator berada di antara dua buah operand. Pada notasi prefix, operator mendahului operand dan pada notasi postfix kedua operand mendahului operatornya. Ekspresi a+bcd+e adalah notasi dalam bentuk infix, sedangkan ekspresi prefixnya adalah +abc+de dan ekspresi postfix-nya adalah ab+cde+ Lipschutz, S. 1986.

2.4 Pemodelan Sistem