Handout TIF104 TIF104 Bab5 Binary Tree Bagian2

4/22/2015

Kompetensi Dasar.

Bab 5:

Agenda





Pendahuluan Binary Tree






Definisi Pohon/Tree
Termonologi Pohon

Penyajian Pohon
Implementasi Pohon

Definisi Binary Tree
Operasi Binary Tree





Pencarian
Penyisipan
Penghapusan

Mahasiswa mendapatkan pemahaman
mengenai cara kerja dan penyajian pohon
biner beserta implementasinya, baik pada
proses pencarian maupun dalam proses
penyisipan dan penghapusan.




Definisi Binary Tree (pohon biner):
“Binary tree is a finite set of nodes which is either
empty or consist of root and two disjoint binary
trees called the left subtree and the right subtree”
Ellist Horowitz, Satraj Sahni, “Fundamentals of Data Structures”

“Binary tree is either empty, or it consist of a node
called root together with two binary trees called
the left subtree and the right subtree”
Robert L. Kruse, “Data Structures and Program Design in C”

1

4/22/2015

Binary Search Tree






Binary Search Tree

Definisi Binary Search Tree/BST (pohon cari
biner): Sebuah pohon biner yang memiliki
karakteristik dimana semua elemen simpul
pada sub pohon kiri memiliki nilai < dari
nilai simpul n (node pengamatan) dan
semua elemen simpul pada sub pohon
kanan memiliki nilai >= dari nilai simpul n.
Terdiri dari:
• Unique binary search tree
• Un-unique binary search tree

Unique Binary Search Tree

Binary Search Tree






Konsep BST adalah jika ditelusuri secara
inorder, maka hasilnya berupa nilai urut
menaik (ascending).
Tujuan BST: Pencarian/penelusuran data
dapat dilakukan secara biner.
Seluruh data dikelompokkan menjadi 2
bagian, kemudian data hanya dicari
pada salah satu kelompok yang
diperkirakan terdapat pada kelompok
tersebut.

Un-unique Binary Search Tree

CREATE Binary Search Tree
Pembuatan Pohon Cari Biner.






Pembuatan BST dapat dilakukan dengan 3
teknik urutan :
1. INORDER, pembuatan BST dilakukan dengan
urutan (order) kiri – root – kanan.
2. POSTORDER, pembuatan BST yang dilakukan
dengan urutan (order) kiri – kanan – root.
3. PREORDER, pembuatan BST yang dilakukan
dengan urutan (order) root – kiri – kanan.

Pada umunya merupakan operasi insert BST

2

4/22/2015

Balanced Binary Search Tree






Mengapa perlu diseimbangkan?
Sebuah BST perlu diseimbangkan untuk
mempercepat proses
penelusuran/pencarian nilai dalam BST
Teknik penyeimbangan BST dapat
dilakukan dengan:
1.
2.
3.
4.

Right Rotation
Left Rotation
Left Rotation to Right Rotation
Right Rotation to Left Rotation


Balanced Code Binary Search Tree





BST dalam sistem komputer dinyatakan
dalam bentuk linked list linier doubly
Menggunakan kode balancing untuk
mengetahui apakah sebuah BST dinyatakan
seimbang
Kode balancing:
1. 0, kedalaman subpohon kiri dan kanan seimbang
2. 1, menandakan subpohon kiri lebih dalam dari
sibpohon kanan
3. -1, menandakan subpohon kanan lebih dalam
dari sibpohon kiri

BST Delete NODE(s)






Merupakan operasi penghapusan simpul
baru pada BST.
Operasi penghapusan simpul – dalam
beberapa kasus - pada umumnya
dilanjutkan dengan melakukan
penyesuaian BST.
Penyesuaian BST dilaukkan untu
mendapatkan keseimbangan BST.

Bab 5:

3