From 17effa11a4ae4ed62d9585e59c155c3fdaeb3c84 Mon Sep 17 00:00:00 2001 From: rohit85-it <91728479+rohit85-it@users.noreply.github.com> Date: Sat, 1 Oct 2022 23:34:29 +0530 Subject: [PATCH] Binary search program in cpp --- .../C++/binarySearch.cpp | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Program's_Contributed_By_Contributors/C++/binarySearch.cpp diff --git a/Program's_Contributed_By_Contributors/C++/binarySearch.cpp b/Program's_Contributed_By_Contributors/C++/binarySearch.cpp new file mode 100644 index 0000000000..7b9fcd71e6 --- /dev/null +++ b/Program's_Contributed_By_Contributors/C++/binarySearch.cpp @@ -0,0 +1,31 @@ +// C++ program to implement recursive Binary Search +#include +using namespace std; + +int binarySearch(int arr[], int l, int r, int x) +{ + if (r >= l) { + int mid = l + (r - l) / 2; + + if (arr[mid] == x) + return mid; + + if (arr[mid] > x) + return binarySearch(arr, l, mid - 1, x); + + return binarySearch(arr, mid + 1, r, x); + } + return -1; +} + +int main(void) +{ + int arr[] = { 2, 3, 4, 10, 40 }; + int x = 10; + int n = sizeof(arr) / sizeof(arr[0]); + int result = binarySearch(arr, 0, n - 1, x); + (result == -1) + ? cout << "Element is not present in array" + : cout << "Element is present at index " << result; + return 0; +}