public class test01 { public static void main(String[] args) { //二分查找 int[] arr={1,3,9,10,16,19,25,50,58,49}; int t=50; System.out.println(base(arr,t)); } public static int base(int arr[],int t){ int left=0; int right=arr.length; int k=0; for (int i = 0; i <arr.length ; i++) { int m=(left+right)>>>1; //避免整数溢出 if(arr[m]==t){ k=m; break; } if(arr[m]>t){ right=m-1; }else{ left=m+1; } } return k; } }
二分查找算法实现
最新推荐文章于 2024-05-16 20:42:16 发布