What is Binary Search ?
**Binary Search (द्विआधारी खोज)**:
Binary Search ek prashikshan (searching) technique hai jo data ko tezi se khojne me madadgar hoti hai. Isme data ko do bhago me batakar dhunda jata hai, aur har bar ek adha data set ko chhodkar dusre adhe ko chhota banaya jata hai, jisse tezi se manchit samuday (sorted array) me kuch vishesh data ko khoja ja sake.
Yadi aapko kisi data set me kisi vishesh item ko dhoondhna hai, to binary search us data set ko do hisson me vibhajit karega aur dekhega ki dhoondhne wala item kis bhag me ho sakta hai. Phir is prakriya ko pratek bar lagataar dubara karta hai aur data set ko adhikansh roop se ghata deta hai, jab tak aapko aapka vishesh item mil jaye ya fir yah spasht ho jaye ki item data set me maujood nahi hai.
Binary Search ki khasiyat yah hai ki yah data set me tezi se khojne ki kshamata rakhta hai kyunki har bar dui sankhyaon ke bich ka adha data set ko chhod deta hai, jisse dhoondhne ke liye keval ek chota hissa bachta hai.
Binary Search, samanya roop se "divide and conquer" (vibhajit aur vijayi) prashikshan pranali ke roop me istemal hoti hai aur vyapak roop se computer programming aur algorithm mein upayog hoti hai. Yah ek pramukh prashikshan tarika hai jo samay aur kathinaiyon ko kam karne me madadgar hoti hai.
>>>> Limitation of binary Search .
List should be sorted form .
Example --
Problem name: Binary Search Implementation
package learningJava;
import java.util.*;
public class newSearch {
public static int searchBinarry(int arr [], int size, int mid, int find,int start, int end) {
while( start <=end ) {
mid = (start+end)/2; // Calculate the middle index
if(arr[mid] == find) { // Check if the middle element is equal to the target
return mid; // Return the index if found
}
else if (arr[mid] < find) { // If middle element is less than target
start = mid+1; // Update the start index to narrow the search to the right half
}
else { // If middle element is greater than target
end = mid-1; // Update the end index to narrow the search to the left half
}
}
return -1; // Return -1 if the element is not found and return is after loop
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scan = new Scanner(System.in);
System.out.print("Enter the Size of Array:");
int size = scan.nextInt();
int start = 0; // Initialize the start index
int end = size-1; // Initialize the end index
int mid = 0 ; // Initialize the mid index
int arr [] = new int[size];
System.out.print("Enter the element of Array:");
for(int i = 0; i < size; i++) {
arr[i] = scan.nextInt();
}
System.out.print("Enter the element to find: ");
int find = scan.nextInt();
// Call the binary search function
int result = searchBinarry(arr, size, mid, find ,start,end);
if (result != -1) {
System.out.println("Element found at index: " + result);
} else {
System.out.println("Element not found in the array.");
}
}
}
Comments
Post a Comment