2 Binary - Search
2 Binary - Search
Binary search is a fast search algorithm with run-time complexity of Ο(log n). This
search algorithm works on the principle of divide and conquer. For this algorithm to
work properly, the data collection should be in the sorted form.
Binary search looks for a particular item by comparing the middle most item of the
collection. If a match occurs, then the index of item is returned. If the middle item is
greater than the item, then the item is searched in the sub-array to the left of the middle
item. Otherwise, the item is searched for in the sub-array to the right of the middle item.
This process continues on the sub- array as well until the size of the subarray reduces
to zero.
Lab : Linear Search and Binary Search
Procedure binary_search
A ← sorted array
n ← size of array
x ← value to be searched
Set lowerBound = 1
Set upperBound = n
if A[midPoint] < x
set lowerBound = midPoint + 1
if A[midPoint] > x
set upperBound = midPoint - 1
if A[midPoint] = x
#include <iostream>
#include <vector>
int main() {
std::vector<int> array = {1, 4, 6, 8, 10, 15, 20};
int target = 15;
if (result != -1) {
std::cout << "Element " << target << " found at index " << result <<
std::endl;
} else {
std::cout << "Element " << target << " not found in the array." <<
std::endl;
}
return 0;
}