A. PENGERTIAN ALGORITMA BINARY SEARCHING
Program binary search adalah sebuah algoritma
pencarian dengan cara membagi data menjadi dua bagian setiap kali terjadi
proses pencarian untuk menemukan nilai tertentu dalam sebuah larik (array)
linear.Proses pencarian binary search
hanya dapat dilakukan pada kumpulan data yang sudah diurutkan terlebih
dahulu.
Sebuah pencarian biner mencari nilai tengah (median), melakukan sebuah pembandingan untuk menentukan apakah nilai yang dicari ada sebelum atau sesudahnya, kemudian mencari setengah sisanya dengan cara yang sama.
Sebuah pencarian biner mencari nilai tengah (median), melakukan sebuah pembandingan untuk menentukan apakah nilai yang dicari ada sebelum atau sesudahnya, kemudian mencari setengah sisanya dengan cara yang sama.
B. TUJUAN ALGORITMA BINARY SEARCHING
Pencarian
Biner (Binary Search) dilakukan untuk :
1. Memperkecil jumlah operasi pembandingan yang
harus dilakukan antara data yang dicari dengan data yang ada di dalam tabel,
khususnya untuk jumlah data yang sangat besar ukurannya.
2.
Beban komputasi pun lebih kecil karena pencarian
dilakukan dari depan, belakang dan tengah.
3.
Prinsip
dasarnya adalah melakukan pembagian ruang searching secara berulang-ulang
sampai data ditemukan atau sampai ruang pencarian tidak dapat dibagi lagi (ada
kemungkinan data tidak ditemukan)
4.
Pencarian
biner dalam program ini yaitu data harus terurut.
C. METODE ALGORITMA BINARY SEARCHING
1.
Pertama
diambil posisi awal = 0 dan posisi akhir = N-1, kemudian dicari posisi data
tengah dengan rumus (posisi awal + posisi akhir)/2. Kemudian data yang dicari
dibandingkan dengan data tengah.
2.
Lalu data
yang di cari akan dibandingkan dengan data tengah.
a)
Jika data
sama, data ditemukan. Proses selesai.
b) Jika data
lebih kecil, maka proses akan dilakukan kembali, tetapi posisi akhir dianggap
sama dengan posisi tengah-1.
c) Jika data
lebih besar, maka proses akan dilakukan kembali tetapi, posisi awal dianggap
sama dengan posisi tengah+1.
3.
Mengulang
dari langkah kedua sampai data ditemukan, atau tidak ditemukan.
4.
Searching
binary ini akan berakhir jika data ditemukan pada posisi awal lebih besar dari
posisi akhir. Jika posisi awal sudah lebih besar dari posisi akhir berarti data
tidak ditemukan.
CONTOH ALGORITMA BINARY SEARCHING