diff --git a/binarysearch197.java b/binarysearch197.java new file mode 100644 index 0000000..6e4dcbf --- /dev/null +++ b/binarysearch197.java @@ -0,0 +1,32 @@ +// recursive Binary Search Java +class BinarySearch { + 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); + } + + // when element is not present in array + return -1; + } + + // Driver Code + public static void main(String args[]) + { + BinarySearch ob = new BinarySearch(); + int arr[] = { 2, 3, 4, 10, 40 }; + int n = arr.length; + int x = 10; + int result = ob.binarySearch(arr, 0, n - 1, x); + if (result == -1) + System.out.println("Element not present"); + else + System.out.println("Element found at index " + + result); + } +}