/**
* Created by panjiannan on 2018/7/3.
*/
public class BinarySearch {
public static void main(String[] args) {
int[] array = {1,2,3,6,8,9};
System.out.println(binarySearch(array, 8));
}
private static int binarySearch(int[] ary, int target) {
return binarySearch(ary, 0, ary.length -1, target);
}
private static int binarySearch(int[] ary, int fromIndex, int toIndex, int target) {
if (ary.length == 0 || fromIndex > toIndex) {
return -1;
}
int mid = (fromIndex + toIndex) >>> 1;
if (target == ary[mid]) {
return mid;
}
if (target < ary[mid]) {
return binarySearch(ary, fromIndex, mid -1, target);
}
if (target > ary[mid]) {
return binarySearch(ary, mid + 1, toIndex, target);
}
return -1;
}
}
二分查找算法递归实现
猜你喜欢
转载自blog.csdn.net/pange1991/article/details/80897556
今日推荐
周排行