本帖最后由 JYcainiao 于 2015-10-9 00:11 编辑
//定义一个函数 用来折半查找一个数在数组的位置
class zhebanArr
{
public static int zheban(int[] arr,int key)
{
int max,min,mid;
max = arr.length-1;
min = 0;
mid = (min+max)/2;
while(arr[mid]!=key)
{
if(arr[mid]>key)
max=mid-1;
else if(arr[mid]<key)
min=mid+1; //循环内部没有重新定义mid 所以……
}
return mid;
}
public static void main(String[] args)
{
int[] arr = new int[]{1,2,3,4,5,6,7,8,9,10};
int x=zheban(arr,3);//调用折半查找
System.out.println(x);//打印该数的角标
}
}
/*
上面是我写的一个折半查找的程序
运行没结果 为啥呢
*/
|
|