Kenalan dengan Binary Search, Yuk! - IDS Digital College

Kenalan dengan Binary Search, Yuk!

Kenalan dengan Binary Search, Yuk!


Binary search atau pencarian biner adalah sebuah algoritma yang biasa digunakan dalam bahasa pemrograman dan sebuah program. Para programmer akan sangat beruntung jika paham tentang ini.

Binary search adalah algoritma dasar paling terkenal di bidang ilmu komputer. Untuk memulai, kita coba paparkan sebuah masalahnya dulu. Kita punya rangkaian integers (bilangan bulat), yang tersusun dengan urutan dari terkecil ke terbesar, namanya A dan memiliki 9 angka. Jadi kita punya index dari 0 sampai 8. Sekarang, kita harus menemukan nilai dari sebuah x apakah ada di rangkaian tersebut atau tidak.

Binary Search

Cara untuk mencari nilai x tersebut adalah kita mendeteksi seluruh rangkaian tersebut, dari index 0 hingga 8. Kalau rangkaiannya pendek masih memungkinkan kita mencari di seluruh rangkaian. Tapi ketika rangkaian atau array nya luas, maka dengan binary search ini kita bisa memperpendek array-nya dengan sebuah algoritma. Cara mengurangi ruang pencariannya adalah menggunakan sebuah fungsi yang mengurangi titik awal dan titik akhir ruang pencarian kita. 

Berikut adalah contoh dari implementasi Binary Search menggunakan bahasa C++

  1. Tuliskan metode yang kamu gunakan, yaitu binary search, yang akan menggunakan integer array, ukurannya adalah (n) dan element yang dicari adalah x. 
  2. Deklarasikan dua variabel, yaitu Low dan High. Low adalah 0 dan high adalah n-1
  3. Deklarasikan variabel lainnya, yakni Mid = (Low+high)/2
  4. Maka akan ada tiga kondisi

Pertama saat nilai x sama dengan nilai A (x == A(mid))

Kedua saat nilai x lebih kecil dari nilai A (x < A(mid)) titik akhir juga menjadi high = mid-1

Ketiga saat nilai x lebih besar dari nilai A, maka titik awalnya bertambah menjadi low = mid+1

Lalu kita ulangi langkah-langkah berikut, jadi kita perlu formula agar bisa secara otomatis mengulang-ulang langkah ini.  Lalu berikan formula while(low<=high) dibawah pernyataan variabel. 

Agar bisa langsung kita lihat, mari kita coba dengan rangkaian sebuah integer berjumlah 8.  Lalu nanti kita akan coba buat hasilnya yang bisa ditampilkan. Masukkan “Enter a number:” untuk mengetahui apakah nilai x ditemukan atau tidak. Setelah itu masukkan juga kondisional jika nilai x ditemukan dan jika tidak ditemukan. Tambahkan juga kalimat kondisional tersebut, misalnya jika ditemukan masukkan kalimat “Number … is at index …”, atau jika tidak ditemukan masukkan kalimat “Number … is not found”. 

Dalam praktiknya, kadang ditemukan beberapa error terjadi saat dilakukan pencarian biner.  Terkadang disebabkan dengan tidak menambahkan tanda kurung di deklarasi loop untuk mengulang semua formulanya. Atau bisa juga karena ada kesalahan di bagian pernyataan variabel kedua, masih tentang penggunaan tanda kurung, yang seharusnya diletakkan di antara tulisan “low+high”, sering terlupakan sehingga binary search ini error. Atau ada cara lain untuk mendeklarasikannya, yaitu dengan menuliskan 

Int mid = low + (high-low)/2

Dengan ini akan lebih baik dan lebih mudah membuat pencarian biner muncul.

Binary search akan membuat ruang pencarian lebih pendek. Kamu tertarik mempelajari tentang binary search? Semoga informasi diatas bisa memberimu gambaran tentang bagaimana proses pembuatan coding binary search, ya!

Jika kamu sangat tertarik untuk belajar mengenai binary search ataupun hal lain yang berkaitan dengan coding, kamu bisa bergabung dengan IDS College jurusan Software Engineering(S1). Kami tunggu untuk bergabung, see you there!

Sumber: freecodecamp.com

Posted in: News