1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| public class BinTree {
public static int binaryFind(int[] arr, int target, int i, int j){ if (i > j){ return -1; } int m = (i + j) / 2 ; if(arr[m] < target){ return binaryFind(arr, target, m + 1 , j); }else if(arr[m] > target) { return binaryFind(arr, target, i, m - 1); }else{ return m; } }
public static void main(String[] args) { int[] arr = {1,2,3,4,5}; System.out.println(binaryFind(arr, 4, 0, arr.length - 1)); }
}
|