Anda di halaman 1dari 13

Makalah

ALGORITMA
BINARY SEARCH TREE

OLEH

KELOMPOK 4

1. SAHRUL HUSU E1D114019


2. SYAHRAN RIFALDI E1D114020
3. ZAMIARTO E1D114021
4. LAODE IMAN SETIAWAN E1D114024
5. SUDARFIN E1D114025

FAKULTAS TEKNIK

JURUSAN S1-ELEKTRO

UNIVERSITAS HALUOLEO

KENDARI

2014
KATA PENGANTAR

Puji syukur kita panjatkan atas kehadirat Tuhan Yang Maha Esa karena atas limpahan
rahmat dan karunianyalah sehingga kami dapat menyelesaikan penyusunan makalah ini
dalam bentuk maupun isinya.

Harapan kami semoga makalah berjudul “BINARY SEARCH TREE” ini membantu
menambah pengetahuan dan pengalaman bagi pembaca, sehingga apabila terdapat hal yang
tak sempurna di makalah ini pembaca dapat menyampaikan sarannya kepada kami.

Makalah ini kami akui masih banyak kekurangan karena pengalaman kami yamg
masih kurang. Oleh karena itu kami harapkan kepada para pembaca untuk memberikan
masukkan yang bersifat membangun untuk kesempurnaan makalah ini.

Kendari, Desember 2014

Tim Penyusun

2
DAFTAR ISI

KATA PENGANTAR ................................................................................... i


DAFTAR ISI.................................................................................................. ii
BAB I PENDAHULUAN ......................................................................... 1
A. Latar Belakang ......................................................................... 1
B. Rumusan Masalah .................................................................... 1
C. Tujuan Penulisan ...................................................................... 2
BAB II PEMBAHASAN ........................................................................... 3
A. Definisi Binary Search Tree .................................................... 3
B. Iterasi dari Binary Search Tree ................................................. 5
C.Flowchart dari Binary Search Tree ........................................... 5
D. Listing Program dari Binary Search Tree ................................. 12
BAB III PENUTUP ..................................................................................... 13
A. Kesimpulan............................................................................... 13
B. Saran ......................................................................................... 13
DAFTAR PUSTAKA .................................................................................... 14

3
BAB 1
PENDAHULUAN

1.1. Latar Belakang


Tree merupakan salah satu bentuk struktur data tidak linear yang
menggambarkanhubungan yang bersifat hirarkis (hubungan one to many) antara elemen-
elemen. Treebisa didefinisikan sebagai kumpulan simpul/node dengan satu elemen
khusus yangdisebut Root dan node lainnya terbagi menjadi himpunan-himpeunan yang
saling tak berhubungan satu sama lainnya (disebut subtree).Tree juga adalah suatu graph
yangacyclic, simple, connected yang tidak mengandung loop.
Sebuah binary search tree (bst) adalah sebuah pohon biner yang boleh kosong,dan
setiap nodenya harus memiliki identifier/value. value pada semua node subpohonsebelah
kiri adalah selalu lebih kecil dari value dari root, sedangkan value subpohon disebelah
kanan adalah sama atau lebih besar dari value pada root, masing – masingsubpohon
tersebut (kiri&kanan) itu sendiri adalah juga bst.
Struktur data bst sangat penting dalam struktur pencarian, misalkan, dalam
kasuspencarian dalam sebuah list, jika list sudah dalam keadaan terurut maka
prosespencarian akan sangat cepat, jika kita menggunanan list contigue dan
melakukanpencarian biner. akan tetapi, jika kita ingin melakukan perubahan isi list
(insert ataudelete), menggunakan list contigue akan sangat lambat, karena proses insert
dan deletedalam list contigue butuh memindahkan banyak elemen setiap saat. mungkin
kita bisa juga menggunakan linked-list, yang untuk operasi insert atau delete tinggal
mengatur – atur pointer, akan tetapi pada n-linked list, kita tidak bisa melakukan
pointersembarangan setiap saat, kecuali hanya satu kali dengan kata lain hanya
secarasequential.

1.2 Rumusan Masalah


1. Apakah definisi dari Binary Search Tree ?
2. Bagaimanakah Itersai Binary Search Tree ?
3. Bagaimankah bentuk Flowchart dari Binary Search Tree ?
4. Bagaimanakah Listing Program dari Binary Search Tree ?

4
1.3 Tujuan
Adapun tujuan dari makalah ini yaitu :
1. Untuk mengetahui definisi dari Binary Search Tree.
2. Untuk Mengetahui Iterasi Binary Search Tree.
3. Untuk Mengetahui Flowchart dari Binary Search Tree.
4. Untuk mengetahui Listing Program dari Binary Search Tree.

5
BAB 2

PEMBAHASAN

2.1 DefinisiBinary Search Tree

Binary Search Tree adalah tree yang terurut berdasarkan saran nama yang mana
ditunjukkan dengan sebuah gambar pencarian berbentuk pohon yang mana setiap nodenya
harus terdapat sebuah value. BST yaitu pencarian suatu jawaban dari masalah dengan
menggunakan pencarian biner berbentuk pohon. Aturan yangharus dipenuhi untuk
membangun sebuah BST adalah sebagai berikut:

1. Semua data dibagian kiri sub-tree dari node t(node induk) selalu lebih kecil dari data
dalam node t itu sendiri.
2. Semua data dibagian kanan sub-tree dari node t(node induk) selalu lebih besar atau sama
dengan data dalam node t .

Suatu binary search tree dari himpunan N record (N1, N2, N3. . . Nn) adalah
suatuBinary Tree yang setiap vertex-nya (sebut Ri) ditempati oleh Ni untuk i=1,2,3 ...
N.Vertex-vertex dari Binary Tree tsb. diatur sedemikian rupa sehingga untuk setiap Ri
harusmemenuhi syarat sbb :

1. Jika R j= left (Ri) maka N j< Ni


2. Jika R j= right (Ri) maka N j> Ni
Soal Kasus :

Diketahui key dari 7 record (54, 70, 81, 3, 11, 48, 90)

Binary Search Tree dari 7 key diatas dapat dibentuk :

6
a. Transversal dalam binary search tree
Transversal dalam binary tree adalah proses menelusuri suatu Binary Tree
sehingga sedemikian rupa setiap vertex dikunjungi hanya 1 kali.3 aktivitas dalam Binary
tree Transversal :1. Visit the Root 2. Transverse the left subtree 3. Transverse the right
subtree Beberapa macam pola penelusuran dalam Binary Tree Transversal :
1. Pre – Order-Transversal
Pre order Transversal adalah penelusuran yang dimulai dari semua
simpul induk kemudian melajutkan penelusuran pada anak simpul yang
dimulai dari anak simpul kiri kemudian anak simpul kanan.
Pre-order-tranversal : 54, 3, 11, 48, 70, 81, 90

2. In-Order-Transversal
In order transversal adalah penelusuran dimulai dari node value yang
terkecil ke yang besar.

In-Order-Transversal : 3, 11, 48, 54,70, 81, 90

3. Post-Order-Transversal
Post Order Transversal adalah penelusuran dimulai dari simpul anak
kiri kemudian simpul anak kanan dan penelusuran terakhir ditujukan pada
simpul induk.

Post-Order-Transversal : 11,48, 3, 81, 90, 70, 54

7
2.2 Iterasi Pada Binary Search Tree

1. Searching
a. Untuk pencarian sukses
Data : 54, 70, 81, 3, 11, 48, 90
Search (48)

48 = = 48
Data yang ditcari berhasil ditemukan
54→3→48
b.Untuk pencarian gagal
Data : 54, 70, 81, 3, 11, 48, 90
Search (49)

Data tidak ada


Data yang dicari gagal ditemukan.
 algoritma
Berikut adalah kunci yang dicari dan x adalah awal simpul.

8
2. MaksimumdanMinimum

Untuk menemukanminimummengidentifikasinodepaling kiri,


yaitunodeterjauhAnda dapat mencapaidengan mengikuticabanghanya tersisa.
Untuk menemukanmaksimalmengidentifikasisimpulpaling kanan,
yaitunodeterjauhAnda dapat mencapaidengan mengikuticabanghanya benar.

3.Insertion

Data : 54, 70, 81, 3, 11, 48, 90

Insert (12)

9
4.PenerusdanPendahulu

Penerus(masing-masing, pendahulu) darikkunci dalampohonpencarianyang


terkecil(masing-masing, yang terbesar) kunciyang dimilikipohon danyangketatlebih
besar dari(masing-masing, kurang dari) k.

Ideuntuk menemukanpenggantiyang diberikansimpulx.

o Jikaxmemilikianak kanan, makapenggantinyaadalahminimumdisubtreekananx.


o Jika tidak, penggantinyaadalahinduk darisimpulterjauhyangdapat dicapai
darixdengan mengikuticabanghanya benar
mundur.

10
5.Penghapusan

Data : 54, 70, 81, 3, 11, 48, 90

2.4 Bentuk Flowchart Binary Search Tree

11
BAB 3
PENUTUP
3.1 Kesimpulan

Binary Search Tree ini memiliki sifat dimana semua subtree kiri harus lebih kecil dari pada
subtree kanan dan induknya. Semua right child juga harus lebih besar dari subtree kanan serta

12
Induknya. Binary search tree dibuat untuk mengatasi kelemahan pada binary tree biasa, yaitu
kesulitan dalam searching / pendarian node tertentu dalam binary tree.
Ciri khas yang melekat pada binary search tree ini yang bisa juga dibilang sebagai
keunggulan dari BST adalah peletakan isi dari nodenya yang terurut berdasarkan besarnya
dari isinya tersebut. Isinya bisa saja berupa integer, karakter, atau apapun sesuai dengan
spesifikasi BST yang ada.
Operasi dasar dari Binary Search Tree(BST) ini sendiri sangatlah sederhana, yakni
hanya fungsi perbandingan dan fungsi rekursif. Di mana anak pohon sebelah kiri node adalah
anak pohon yang lebih kecil dari node, sedangkan anak pohon sebelah kanan node memiliki
isi yang lebih besar daripada isi node. Biasanya penyimpanan data di dalam BST ini bisa juga
berupa record di mana pengurutannya hanya tinggal melihat key dari record tersebut, missal
nomor absen, NIM, tanggal, dll.
Dari hasil ulasan di atas dapat kita lihat bahwa sesungguhnya BST memiliki potensi
untuk menjadi salah satu alternatif untuk mengolah database. Dengan BST waktu pengolahan
dapat dipersingkat karena tingkat efisiensinya yang tergolong tinggi untuk hamper setiap
proses. Namun demikian BST masih memiliki beberapa kelemahan seperti tidak semua node
memiliki akses ke sebuah node yang lain.

3.2 Saran

Daftar Pustaka

http://www.cs.rochester.edu/~gildea/csc282/slides/C12-bst.pdf
https://kautsarsophan.files.wordpress.com/2011/06/tree-edited.pdf

13