---
title: "Binary Search using Recursion in java"  
description: "In this blog I am provide you the code for Binary search using Recursion in java.import java.io.*;   public class MyRecursiveBinarySearch {"  
author: "Vijay Shukla"  
published: 2013-10-04  
updated: 2014-09-18  
canonical: https://www.mindstick.com/blog/598/binary-search-using-recursion-in-java  
category: "java"  
tags: ["java"]  
reading_time: 4 minutes  

---

# Binary Search using Recursion in java

In this [blog](https://www.mindstick.com/articles/12705/myths-and-misconception-about-blog) I am provide you the [code](https://yourviews.mindstick.com/view/85458/alan-turing-the-mastermind-behind-cracking-the-enigma-code-during-world-war-ii) for [Binary search](https://www.mindstick.com/forum/159485/working-of-a-binary-search-tree-bst-and-what-is-its-time-complexity-for-insertion-and-retrieval) using [Recursion](https://answers.mindstick.com/qa/111681/what-is-recursion-and-when-should-i-use-it) in java.

```
import java.io.*;
public class MyRecursiveBinarySearch {                public static int recursiveBinarySearch(int[] sortedArray, int start, int end, int key) {
                    if (start < end) {                        int mid = start + (end - start) / 2;                         if (key < sortedArray[mid]) {                            return recursiveBinarySearch(sortedArray, start, mid, key);
                                              } else if (key > sortedArray[mid]) {                            return recursiveBinarySearch(sortedArray, mid+1, end , key);

                        } else {                            return mid;
                        }                    }                    return -(start + 1);

                }
                public static void main(String[] args) {

                                System.out.print("Enter the lenth of array : ");
                                int len= Integer.parseInt(System.console().readLine());
                                int[] arr1 = new int[len];
                                for(int i=0;i<len;i++)                                {
                                                System.out.print("Enter element ["+i+"] postion : ");
                                               arr1[i]= Integer.parseInt(System.console().readLine());
                                }                                System.out.println("Your values are\n");
                                for(int i=0;i<len;i++)
                                {
                                                System.out.print(arr1[i]+"\t");

                                }
                                System.out.println();                                System.out.print("Enter value for search -: ");
                                int find= Integer.parseInt(System.console().readLine());
                                int index = recursiveBinarySearch(arr1,0,arr1.length,find);
                if(index == -1)
                                {
                                                System.out.println("Given value not found in array!");
                                }                                else                                 {
                                                System.out.println("Value "+find+" found at "+index+" position.");
                                 }
                }
}
```

---

Original Source: https://www.mindstick.com/blog/598/binary-search-using-recursion-in-java

Copyright © MindStick Software Pvt. Ltd. This Markdown version is provided for developers, AI systems, and offline reading.
