Example 1: binary search program c++
#include <iostream>
using namespace std;
int binarySearch(int array[], int size, int value)
{
int first = 0,
last = size - 1,
middle,
position = -1;
bool found = false;
while (!found && first <= last)
{
middle = (first + last) / 2;
if (array[middle] == value)
{
found = true;
position = middle;
}
else if (array[middle] > value)
last = middle - 1;
else
first = middle + 1;
}
return position;
}
int main ()
{
const int size = 5;
int array[size] = {1, 2, 3, 4, 5};
int value;
int result;
cout << "What value would you like to search for? ";
cin >> value;
result = binarySearch(array, size, value);
if (result == -1)
cout << "Not found\n";
else
cout << "Your value is in the array.\n";
return 0;
}
Example 2: binary search in c++
#include<iostream>
using namespace std;
int binarySearch(int arr[], int p, int r, int num) {
if (p <= r) {
int mid = (p + r)/2;
if (arr[mid] == num)
return mid ;
if (arr[mid] > num)
return binarySearch(arr, p, mid-1, num);
if (arr[mid] < num)
return binarySearch(arr, mid+1, r, num);
}
return -1;
}
int main(void) {
int arr[] = {1, 3, 7, 15, 18, 20, 25, 33, 36, 40};
int n = sizeof(arr)/ sizeof(arr[0]);
int num = 33;
int index = binarySearch (arr, 0, n-1, num);
if(index == -1)
cout<< num <<" is not present in the array";
else
cout<< num <<" is present at index "<< index <<" in the array";
return 0;
}
Example 3: binary search in c
#include<stdio.h>
int BinarySearch(int arr[], int search, int mid, int len){
if(mid == -1 || mid == len+1){
printf("\nSearched Element doesn't exist.");
return 1;
}
else if (search > arr[mid]){
mid++;
BinarySearch(arr,search,mid,len);
return 0;
}
else if (search < arr[mid]){
mid--;
BinarySearch(arr,search,mid,len);
return 0;
}
else if(search == arr[mid]) {
printf("\n Searched Element found at Location %d.",mid);
return 1;
}
}
void main(){
int arr[] = {1,2,3,4,5,6,7,8,9};
int len = sizeof(arr) / sizeof(int);
int mid = (int) (len / 2) + 1;
printf("\n Please Enter Number You Want to Search \n > ");
int search;
scanf("%d",&search);
int Result = BinarySearch(arr,search,mid,len);
}