二分查找算法的两种实现
来源:互联网 发布:linux视频直播服务器 编辑:程序博客网 时间:2024/05/22 12:17
前提条件必须元素有序 ,推荐第一种
package binary;public class Test { public static void main(String[] args) { // int[] i = new int[]{1,4,6,8,9,11,33,44,55}; int[] i = { 3, 6, 8, 9, 11, 55, 66 }; int index = BinarySearch(i, 11); System.out.println(index); } public static int BinarySearch(int[] array, int key) { int min = 0; int max = array.length - 1; while (min <= max) { int mid = (min + max) >> 1; if (key > array[mid]) min = mid + 1; else if (key < array[mid]) max = mid - 1; else return mid;//mid为所查元素下标 } return min;//如果要查询的元素在数组中都不存在 返回要查询的的元素在数组中的位置(介于两个数下标中间) } public static int BinarySearch2(int[] array , int key){ int min = 0; int max = array.length - 1; int mid = (min + max) >> 1; while( array[mid] != key){ if(key > array[mid]) min = mid + 1; else if( key < array[mid]) max = mid - 1; if(min > max) return -1; mid = (min + max) >> 1; } return mid; }}
0 0
- 二分查找算法的两种实现
- 二分查找的两种正确实现
- 二分查找的两种实现方法
- 二分查找的两种实现
- 二分查找的两种实现
- 二分查找的两种实现方式
- 二分查找的两种实现方式
- js 二分查找的两种实现
- 算法:两种方式(递归/循环)实现二分查找
- 二分查找求上下界的两种不同算法
- 二分查找算法的实现
- 实现二分查找的算法
- 二分查找算法的实现
- 二分查找算法的实现
- 二分查找算法的实现
- javascript中二分查找法的两种实现方式
- 二分查找的两种实现方式(JAVA)
- 二分查找的两种实现方式--循环和递归
- PL/sql 链接数据库时提示Initialization error,已解决!
- 【sql注入教程】mysql注入直接getshell
- 操作符sizeof
- 阻抗和阻抗匹配
- 三层架构
- 二分查找算法的两种实现
- (待翻译)Authentication Filters in ASP.NET Web API 2
- 深入理解Object-C消息转发机制
- 分布式事务
- javascript 动态删除表格
- 四,MyBatis结果集映射和表与表之间映射
- Linux Input子系统浅析(二)-- 模拟tp上报键值
- event.keyCode与event.which的区别
- JNI与Android VM之间的关系