public class Binary {
@Test
public void testInsertSort() {
int []a= {4,6,8,10,14};
System.out.println("输出你要查找的数:");
int num=new Scanner(System.in ).nextInt();
System.out.println(BinarySearch(a,num)) ;
}
public int BinarySearch(int [] a,int x) {
int left=0,right=a.length-1,mid;
while(left<=right) {//left>right就没法形成闭区间了
mid=(left+right)/2;//取中间点
if(a[mid]==x)return mid;
else if(a[mid]>x)//中间数大于x
right=mid-1;//往左子区间[left,mid-1]
else
left=mid+1;//往左子区间[mid+1,right]
}
return -1;
}
}
java面试题——基础算法入门06《折半查找》
猜你喜欢
转载自blog.csdn.net/ZSS1753936255/article/details/81709373
今日推荐
周排行