diff --git a/searching_algos/binary_search.cpp b/searching_algos/binary_search.cpp index 2475ea4..a122aa5 100644 --- a/searching_algos/binary_search.cpp +++ b/searching_algos/binary_search.cpp @@ -1,13 +1,12 @@ int binary_search(int arr[],int size, int key) { - int mid = size / 2; - if(arr[mid] == key) - return mid; int low = 0; int high = size - 1; - while(arr[mid] != key) + while(low <= high) { + mid = low + (high - low) / 2; + // start from here if(key < arr[mid]) { high = mid;