Solusi dalam Pencarian Array Menggunakan Teknik Binary Search Dengan Data Terurut Pada Java Netbeans, adalah sebagai berikut ini:
1. PENCARIAN BINARY SEARCH
1. PENCARIAN BINARY SEARCH
Topik pencarian pada sesi ini mengguakan data terurut sebagai objek pencarian.
Data yang ada harus diurutkan terlebih dahulu berdasarkan suatu urutan tertentu yang disajikan kunci pencarian.
Teknik pencarian ini akan membagi data menjadi kumpulan array yang menjadi sumber pencarian jadi dua bagian setiap kali terjadi pencarian.
Algoritma untuk pencarian biner ini adalah :
a) Data diambil dari posisi 1 sampai posisi akhir N
b) Kemudian cari posisi data tengah dengan rumus : ( posisi awal + posisi akhir ) / 2
c) Kemudian data yang dicari dibandingkan dengan data yang di tengah, apakah sama atau lebih kecil, atau lebih besar ?
d) Jika lebih besar, maka proses pencarian dicari dengan posisi awal adalah posisi tengah + 1
e) Jika lebih kecil, maka proses pencarian dengan posisi akhir adalah posisi tengah – 1
f) Jiaka data sama, berarti ketemu.
2. ILUSTRASI PROSES
Misalkan dari kumpulan data berikut ini, harus dicarai angka 7 dengan teknik binary search :
- 0 1 2 3 4 5 6 7 8
- 3 9 11 12 15 17 23 31 35
- A B C
- Karena17 > 15 (data tengah), maka: awal = tengah + 1
- 0 1 2 3 4 5 6 7 8
- 3 9 11 12 15 17 23 31 35
- A B C
- Karena 17 < 23 ( data tengah), maka: akhir = tengah – 1
- 0 1 2 3 4 5 6 7 8
- 3 9 11 12 15 17 23 31 35
- A=B=C
- Karena 17 = 17 (data tengah), maka KETEMU
3. PRATIKUM
1) Bukalah aplikasi NetBeans
4) Beri nama project percobaan3, beri tanda cek pada Create Main Class dan beri nama kelas dengan BinarySecarh (tulis lengkkap sebagai org.alpro2.pratikum.BinarySearch)
7) Setelah fungsi pencarian dibuat, modifikasilah fungsi main, berikan deklarasi variabel yang diperlukan seprti iteraksi perulangan (i), angka dicari (x), penyimpanan hasil (hasil), dan indikator hasil pencarian (ketemu)
8) Tentukan array yang berisi kumpulan angka terurut yang menjadi sumber pencarian (data[]) dan angka yang dicari (x)
10) Setelah pencarian dilakukan, langkah berikutnya adalah mengidentifikasi hasil pencarian. Jika ada hasilnya, tampilkan pesan bahwa angka ditemukan, ada sebaliknya jika tidak ada hasilnya, tampilkan pesan bahwa angka tidak ditemukan
12) Ini adalah contoh kode lengkap yang telah diberikan fungsi pencarian dan pemanggilannya di dalam fungsi main
15) Gantilah angka yang dicaria ( variabel x) dengan sembarang angka yang tidak terdapat pada array data[], misalnya 21, lalu jalankan ulang kode anda.