二分查找法 Java实现
2021-11-28 20:53
134 查看
/*** * 二分查找法 * 1、首先需要一个排序好的数组 * 2、设置一个左边界L=0 , 设置一个右边界R=length-1; * 3、循环(l<=r) * 设置一个中间值M = l+r >>> 2 //位运算 相当于 (l+r)/2 * 4、判断m下标的值 * 4.1、如果下标值 等于 需要查的值返回下标 * 4.2、如果下标值 大于 需要查找的值 那就 r=m-1; * 4.3、如果下标值 小于 需要查找的值 那就 l=m+1; * @param arr 需要查找的数组 * @param tag 查找的值 * @return 返回下标 */ public static int binarySearch(int[] arr,int tag){ int l=0,r=arr.length-1,m; while(l<=r){ m = (l+r)/2; System.out.println(m); if(arr[m] == tag){ return m; }else if(arr[m] > tag){ r = m - 1; }else{ l= m + 1; } } //没有查询到 return -1; }
相关文章推荐
- java 实现二分查找法
- java 实现二分查找法
- Java实现的对无序数组进行的二分查找法
- java实现二分查找法
- 用Java实现二分查找法
- 二分查找法的Java实现
- java实现二分查找法
- 数据结构与算法——二分查找法(Java实现)
- java 实现二分查找法
- 两种方式Java实现二分查找法
- java实现二分查找法
- java实现二分查找法
- java实现二分查找法
- (旋转数组问题)给定一个整数类型的循环有序数组,求循环数组的特定值,使用二分查找法(JAVA实现)
- java 实现二分查找法
- java二分查找法代码实现
- java 实现二分查找法
- 二分查找法java实现
- java实现二分查找法
- java实现二分查找法