二分查找实现
//二分法查找数
public static void main(String[] args) {
int[] num = { 1, 3, 5, 7, 9, 12, 13, 15, 19 };
int v = findNum(7, num);
System.out.println(v);
}
//封装一个查找的方法
public static int findNum(int a, int[] num) {
int begin = 0;
int end = num.length - 1;
//为什么要等,不要漏最后那个数
while (begin <= end) {
//得到中间下标
int mid = (begin + end) / 2;
if (a < num[mid]) {
end = mid - 1;
} else if (a > num[mid]) {
begin = mid + 1;
} else {
return mid;
}
}
return -1;
}