验证中...
开源中国 2018 年度最后一场技术盛会邀你来约~错过就要等明年啦!点此立即预约
片段 1 片段 2 片段 3
gistfile1.txt
原始数据 复制代码
public class 递归 {
public static void main(String[] args) {
int [] k ={10,20,30,40,50,60,70,80};
/*int y =binarySearch(k,0,k.length-1,80); *
System.out.print(y);*/
int y =binarySearch(k,80);
System.out.println(1000);
}
/**
* 循环二分查找
* @param l
* @param key
* @return
*/
static int binarySearch(int [] l , int key){
int start =0;
int end =l.length-1;
while(start<=end){
int mid =(start+end)>>1;
if(key>l[mid]){
start =mid+1;
}else if(key <l[mid]){
end=mid-1;
}else {
return mid;
}
}
return -1;
}
/**
*二分查找递归写法
* @param l
* @param start
* @param end
* @param k
* @return
*/
static int binarySearch(int [] l, int start ,int end , int k){
if(start>end){
return -1;
}
int mid =(start+end)>>1;
if(l[mid]==k){
return mid;
}else if(l[mid]>k){
return binarySearch(l,start,mid-1,k);
}else {
return binarySearch(l,mid+1,end,k);
}
}
}
digui.png
引用类型和基本数据类型的区别.png

评论列表( 0 )

你可以在登录后,发表评论

搜索帮助