折半查找法(
half-interval search
) 的优点是 比较次数少,查找速度快,平均性能好;
其缺点是 要求待查表为
有序表,且插入删除困难。
因此,折半查找方法适用于不经常变动而查找频繁的有序列表。
public class
half-interval search{
//折半法查找一个数是否在有序列表中
public static void main(String []args){
int []noSort={1,2,3,5,8,9};
int low=0,i=0,middle,high=noSort.length-1;
int t=9; //这个 9 就是要查找的数
while(low<=high){ //low <high是条件当两者相等的时候 即查找的结束
middle=(low+high)/2;
if(noSort[middle]==t){
System.out.println("The number is in the array "+middle);
break; //找到了之后就可以跳出循环了
}else if(t>noSort[middle]){
low=middle+1;
}else{
high=middle-1;
}
}
}
}