用Java写的二分查找代码:
package cn.tedu.demo;
import java.util.Arrays;
public class Demo {
public static void main(String[] args) {
//二分查找, 折半查找
int[] nums = {1,2,3,5,6,7,9};
int number = 7;
int min = 0;
int max = nums.length-1;
int mid = (min+max)/2;
while(number != nums[mid]){
if(number>nums[mid]){
min = mid +1;
}else{
max = mid-1;
}
if(min>=max){
mid = -1;
break;
}
mid = (min+max)/2;
}
System.out.println(mid);
}
}
输出:5
用Java写的二分查找图片:注解:输出的是5,即是数组的下标5.