【数据结构】Java语言二分查找数组中的下标
package basic;
/*
* Goal:用二分查找算法找出一个数在数组中的下标
* Author:Tang.Mitnick
* Site:FaFu
* */
//设计思想:对一个数组中的数组进行折半查找,确定给出的数对应的在数组中的下标。
public class BinarySearch {
public static int getIndex(int[] array,int number){
int min=0,mid,max=array.length;
while(min<max){
mid=(min+max)/2;//确定中间下标
if(number>array[mid])
min=mid+1;
else if(number<array[mid])
max=mid-1;
else
return mid;
}
return min;//数组里面无该元素返回该元素可能在的位置
}
public static void main(String[] args)
{
int[] array={2,3,5,6,7,23,56,67};
int index = getIndex(array,6);
System.out.println("index="+index);
}
}
结果输出: