Using Java Given the following method header give the code f
Using Java
Given the following method header, give the code for the function using a binary search of an array. Don\'t worry about the precondition (assume this is already true). public static boolean has 10 (intf] data, int start, int end)//Precondition: The elements data[start]...data[end] are sorted from smallest to largest. This//array segment might be empty (indicated by end being less than start).//Postcondition: A true return value indicates that the number 10 appears in the array//data[start]...data[end]. A false return value indicates that 10 doesn\'t appear.Solution
public class BinarySearchRecursion {
    /**
    * @param args
    */
    public static void main(String[] args) {
        int arr[] = { 1, 3, 5, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 };
        boolean found = has10(arr, 0, arr.length - 1);
       if (found) {
            System.out.println(\"10 found \");
        } else {
            System.out.println(\"10 not found\");
        }
    }
   /**
    * @param arr
    * @param start
    * @param end
    * @return
    */
    public static boolean has10(int[] data, int start, int end) {
        int mid;
        int key = 10;
        if (end < start) {
            return false;
        }
       if (data.length <= 0) {
            return false;
        }
        mid = (start + end) / 2;
       if (data[mid] < key)
            return has10(data, mid + 1, end);
        else if (data[mid] > key)
            return has10(data, start, mid - 1);
        else
            return true;
    }
 }
OUTPUT:
10 found

