折半查找
程序员文章站
2022-06-28 20:10:22
public class A{ public static void main(String[] args){ int[] nums={-1,1,3,19,55,66}; //降序 66 55 19 3 1 -1 int num=66; int index=A.getIndex(nums,num); ......
public class a{
public static void main(string[] args){
int[] nums={-1,1,3,19,55,66}; //降序 66 55 19 3 1 -1
int num=66;
int index=a.getindex(nums,num);
system.out.println(index);
}
//算法复杂度极高 遍历 n/2的数据取查找 折半查找 log2n
public static int getindex(int[] arr,int num){
int min=0;
int max=arr.length-1;
while(min <=max){
int mid=(min+max)/2;
if(num == arr[mid]){
return mid;
}else if(num < arr[mid]){
max=mid-1;
}else{
min=mid+1;
}
}
return -1;
}
}
上一篇: 曾国藩为什么急着杀掉忠王李秀成?
下一篇: 致996企业人们的一封信