Dalam pemrograman, pasti nya kita sering mendengar kata array. Array adalah tipe data dimana kita dapat menyimpan beberapa data seperti loker berderet. Data-data tersebut di simpan agar bisa di akses oleh program kita. Data yang ada dalam program tidak di batasi jumlah nya berapa. Lalu bagaimana kita dapat mencari suatu data ?
Berikut ini adalah contoh dari algoritma binary search. Konsep nya cukup mudah. Kurang lebih seperti membagi 2 sebuah array dan terus membagi 2 lagi setiap pecahan nya sampai menemukan yang kita ingin cari. Dalam hal ini, data di dalam array tersebut harus sudah di sortir.
Langkah pengerjaan nya adalah :
- Array harus di sortir terlebih dahulu dan tentukan angka yang ingin di cari.
Contoh :
4, 7, 8, 11, 13, 15, 17, 19, 20, 24, 30
Angka yang ingin di cari adalah 8 - Anggaplah angka-angka di atas adalah array. Kemudian, menggunakan rumus : (Awal + akhir ) / 2 = mid. Kita harus mencari nilai tengah dari array tersebut. Awal dan akhir yang akan di gunakan adalah index dari array nya.
Contoh : ada array isi nya 11. Maka jika di masukan ke rumus adalah (0+10) / 2 = 5. Maka index 5 adalah nilai tengah dari array tersebut. Angka di index ke-5 adalah 15. - Kondisi 1 = Apabila nilai yang kita cari = mid, maka kita sudah berhasil menemukan angka tersebut
Kondisi 2 = Apabila nilai yang kita cari lebih kecil dari mid, maka di dalam rumus, AKHIR akan di isi dengan nilai mid-1.
Kondisi 3 = Apabila nilai yang kita cari lebih besar dari mid, maka di dalam rumus, AWAL akan di isi dengan nilai mid+1.
Angka yang kita cari yaitu angka 7, lebih kecil dari pada nilai yang ada di mid yaitu 15. Maka, kita harus menggunakan rumus lagi dan menuju ke langkah berikut nya :
mid = (awal + akhir) / 2
= (0+ 4 ) / 2
= 2
Nilai yang ada di index ke -2 adalah angka 8. Index ke-2 sekarang akan menjadi nilai MID yang baru.
Karena kondisi 1 sudah terpenuhi, yaitu kita sudah menemukan nilai MID = nilai yang di cari. Maka proses pencarian berhenti sampai disini dan kita sudah berhasil menemukan angka yang di cari dengan 2 langkah.
Itu adalah contoh dari algoritma binary search. Semoga bermanfaat bagi kita semua. Terima kasih