How to implement the binary search algorithm in C++

1 Answer

0 votes
#include <iostream>

int binarySearch(int array[], int element, int low, int high) {
    while (low <= high) {
        int mid = low + (high - low) / 2;

        if (array[mid] == element)
            return mid;

        if (array[mid] < element)
            low = mid + 1;
        else
            high = mid - 1;
    }
    
    return -1;
}

int main(void) {
    int array[] = { 3, 4, 6, 8, 9, 10, 12, 20, 27, 30, 31};
    int number_to_find = 20;

    int index = binarySearch(array, number_to_find, 0, sizeof(array)/sizeof(array[0]));
        
    if (index == -1) 
        std::cout << "Not found";
    else
        std::cout << "Found at index: " << index;
}




/*
run:

Found at index: 7

*/

 



answered Jan 18, 2022 by avibootz
...