Dosen Pengampu :
NIM : 201601041
PURWOKERTO
2017
BINARY SEARCH TREE
Menurut (WIKIPEDIA, 2017) Definisi dari Binary Search Tree adalah Pohon biner berakar , yang simpul
internalnya masing-masing menyimpan sebuah kunci (dan secara opsional, nilai yang terkait) dan masing-masing
memiliki dua sub pohon yang berbeda, yang biasanya dilambangkan kiri dan kanan . Pohon tersebut juga
memenuhi properti pohon pencarian biner, yang menyatakan bahwa kunci di setiap simpul harus lebih besar dari
atau sama dengan kunci yang tersimpan di sub-pohon kiri, dan kurang dari atau sama dengan kunci yang
tersimpan di sub-pohon yang tepat.
A. SOURCE CODE
B. OUTPUT
C. URAIAN PENJELASAN
- Gambar diatas merupakan pembuatan tipe data baru bernama BstNode dengan 2 pendeklarasian
yaitu variabel pointer left dan right.
- Merupakan pembuatan pointer node baru (deklarasi data int data) fungsi yang akan menghasilkan
masukan data.
- Pointer dari newNode sama dengan fungsi new BstNode() artinya dalam pointer newNode, hasil
sama akan dimasukan pada fungsi new BstNode().
- Penambahan data jika dimasukan data pada node baru newNode->data merupakan sama dengan data
masukan.
- Pada node baru kiri dan kanan isian sama dengan NULL.
- Fungsi int main adalah fungsi utama dimana program akan membaca untuk pertama kali.
- BstNode* root pointer ke root berarti terhubung pada root.
- Pernyataan root isiannya NULL
- Terdapat root dimana isianya fungsi masukan, 15, 10, 20, 8,12,17,25. Yang nanti nya akan digunakan
pada saat mode pencarian untuk menentukan apakah data yang dimasukan nantinya bernilai true atau
false. Bernilai true, apabila data yang dimasukan sesuai dengan data yang ada. Bernilai false apabila
data yang dimasukan tidak sesuai data yang ada.
- Menyatakan sebuah pernyataan dimana fungsi search pada fungsi root,number bernilai benar
ketemu apabila pada hasil pencarian search pada root dan pada number sesuai dengan data yang
ada, jika tidak sesuai dengan data yang ada maka Tidak ketemu
D. BINARY SEARCH TREE (POHON)
Diketahui bahwa apabila angka masukan lebih kecil dibanding angka yang telah dimasukan sebelumnya
maka pohon bercabang ke kiri, dan apabila lebih besar maka pohon bercabang ke kanan.
NULL
15
15
10
15
10 20
- Terdapat masukan angka 8. 8 < 15 = arah cabang kiri, 8 < 10 = cabang kiri
15
10 20
- Terdapat masukan angka 12. 12 < 15 = arah cabang kiri, 12 > 10 = cabang kanan
15
10 20
8 12
- Terdapat masukan angka 17. 17 > 15 = arah cabang kanan, 17 < 20 = cabang kiri
15
10 20
8 12 17
- Terdapat masukan 25. 25 > 15 = arah cabang kanan, 25 > 20 = cabang kanan
15
10 20
8 12 17 25
Pada proses pencarian data, jika data yang dicari berada pada pohon maka data tersebut true ketemu.
Jika data tidak berada pada pohon maka data tersebut false tidak ketemu.
10 20
25 = 25, data ketemu
8 12 17 25
Dari gambar diatas dapat dilihat bahwa data ketemu setelah dianalisa pada proses pencarian data.
DAFTAR PUSTAKA
ALGORITMA DAN STRUKTUR DATA TREE. (2013, April 3). Retrieved from
https://sumbersinau.wordpress.com/2013/04/30/algoritma-dan-struktur-data-tree/
Pohon Biner. (2016, Januari 6). Retrieved from https://id.wikipedia.org/wiki/Pohon_biner
WIKIPEDIA. (2017, Oktober 31). Binary search tree. Retrieved from
https://en.wikipedia.org/wiki/Binary_search_tree