Apa itu Pencarian Biner di Java? Bagaimana cara menerapkannya?



Pencarian Biner di Java adalah algoritma pencarian yang menemukan posisi nilai target dalam array yang diurutkan. Pada artikel ini saya akan memberi tahu Anda cara menerapkannya dengan bantuan contoh.

Algoritma Pencarian dan Penyortiran adalah algoritma populer dalam bahasa pemrograman apa pun. Mereka adalah dasar untuk memahami dasar-dasar pemrograman. Salah satu algoritma pencarian yang populer adalah Pencarian Biner di . Pada artikel ini, saya akan memberi tahu Anda semua tentang implementasinya.

Topik di bawah ini tercakup dalam artikel ini:





Ayo mulai!

Apa itu Pencarian Biner?

Pencarian Biner dalam adalah algoritma pencarian yang menemukan posisi nilai target dalam urutan Himpunan . Pencarian biner membandingkan nilai target dengan elemen tengah larik. Saya tbekerja hanya pada sekumpulan elemen yang diurutkan. Untuk menggunakan pencarian biner pada koleksi, file harus disortir dulu.



Program Pencarian Biner di Jawa - Pencarian Biner di Jawa - EdurekaKetika digunakan untuk melakukan operasi pada set yang diurutkan, jumlah iterasi selalu dapat dikurangi berdasarkan nilai yang sedang dicari. Anda dapat melihat pada snapshot di atas untuk menemukan file elemen tengah . Analogi pencarian biner adalah dengan menggunakan informasi yang diurutkan array dan mengurangi kompleksitas waktu O (log n) .

Menerapkan Algoritma Pencarian Biner

Mari kita lihat kode pseudo di bawah ini untuk memahaminya dengan lebih baik.

Prosedur binary_search A & larr mengurutkan larik n & larr ukuran larik x & larr nilai yang akan dicari Set rendah = 1 Set tinggi = n sedangkan x tidak ditemukan jika tinggi

Penjelasan:



Langkah 1: Pertama, bandingkan x dengan elemen tengah.

Langkah 2: Jika x cocok dengan elemen tengah, maka Anda harus mengembalikan indeks tengah.

Langkah 3: Lain, Jika x lebih besar dari elemen tengah, maka x hanya bisa terletak di sisi kanan setengah larik setelah elemen tengah. Karenanya Anda mengulang bagian kanan.

Langkah 4: Lain, jika (x lebih kecil) maka kambuh untuk bagian kiri.

Begitulah cara Anda mencari elemen dalam larik yang diberikan.

alat yang digunakan dalam analitik data besar

Sekarang mari kita lihat cara menerapkan algoritme penelusuran biner secara rekursif. Program di bawah ini menunjukkan hal yang sama.

Pencarian Biner Rekursif

public class BinarySearch {// Implementasi Java dari Pencarian Biner rekursif // Mengembalikan indeks x jika ada di arr [l..h], else return -1 int binarySearch (int a [], int l, int h, int x) {if (h> = l) {int mid = l + (h - l) / 2 // Jika elemen ada di tengahnya sendiri if (a [mid] == x) return mid // If elemen lebih kecil dari mid, maka itu hanya bisa ada di subarray kiri jika (a [mid]> x) return binarySearch (arr, l, mid - 1, x) // Lain elemen hanya bisa ada di subarray kanan return binarySearch (arr, mid + 1, h, x)} // Kita sampai di sini ketika elemen tidak ada dalam array return -1} public static void main (String args []) {BinarySearch ob = new BinarySearch () int a [] = {20, 30, 40, 10, 50} int n = a.length int x = 40 int res = ob.binarySearch (a, 0, n - 1, x) if (res == -1) System.out .println ('Elemen tidak ada') else System.out.println ('Elemen ditemukan di indeks' + res)}}

Saat menjalankan program di atas, ini akan menemukan elemen yang ada di indeks tertentu

Elemen ditemukan di indeks 2

Jadi ini membawa kita ke akhir Pencarian Biner di Jawa artikel. Saya harap Anda menganggapnya informatif dan membantu Anda dalam memahami .

Lihat oleh Edureka, perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar yang puas dan tersebar di seluruh dunia. Kami di sini untuk membantu Anda dengan setiap langkah dalam perjalanan Anda, untuk menjadi selain pertanyaan wawancara java ini. Kami menghadirkan kurikulum yang dirancang untuk siswa dan profesional yang ingin menjadi Pengembang Java. Kursus ini dirancang untuk memberi Anda permulaan dalam pemrograman Java dan melatih Anda untuk konsep Java inti dan lanjutan bersama dengan berbagai kerangka kerja Java seperti Hibernate & Spring.

Jika Anda menghadapi kesulitan saat menerapkan Pencarian Biner di , harap sebutkan di bagian komentar di bawah dan kami akan menghubungi Anda kembali secepatnya.