二分搜索算法(Java代码实现)
2018-03-06 19:03
190 查看
二分搜索算法(Java代码实现)
(1)判断是否适合分治法实现
(2)实现二分搜索的Java代码如下:
public class Main {
public static void main(String[] args) {
int[] arr = { 11, 22, 33, 44, 55, 66, 77 };
int index1 = Binary(arr, 12, 0, arr.length - 1);
int index2 = Binary(arr, 66, 0, arr.length - 1);
System.out.println(index1);
System.out.println(index2);
}
/**
* 搜索指定要搜索元素在数组中是索引
*
* @param arr:要二分搜索的数组
* @param key:要查找的关键字
* @param low:起始索引
* @param high:结尾索引
* @return:若搜索到这个元素,则返回数组的索引下标;否则返回-1
*/
public static int Binary(int[] arr, int key, int low, int high) {
while (low <= high) {
int mid = (low + high) / 2;
if (arr[mid] > key) {
high = mid - 1;
} else if (arr[mid] < key) {
low = mid + 1;
} else {
return mid;
}
}
return -1;
}
}
(3)运行结果:
(4)复杂度分析:
相关文章推荐
- 二分查找java代码实现
- 算法与数据结构-二分搜索 讲解与java代码实现
- 算法 -- Java实现二分(折半)查找(图解 + 代码实现)
- 代码之美中的二分搜索算法--Java版
- 代码之美中的二分搜索算法--Java版
- 二分查找的几个变种(Java代码实现)
- 购物车的 java 代码实现方法
- 用java实现简单的网络通信,相当于一个最简单的控制台qq(附代码) 推荐
- [转贴]java.util.Arrays的BUG - 二分搜索算法
- 同样一个问题的两种 java 实现代码 的比较
- JAVA 实现多文件同时操作 程序代码
- 利用newxy(新坐标),不写一行java代码实现多项查询
- Jsp/Java代码分离.实现页面真正的代码分离 前言
- 查找算法集:顺序查找、二分查找、插值查找、动态查找(数组实现、链表实现,附代码)
- Jsp/Java代码分离.实现页面真正的代码分离 设计原理
- JAVA断点续传实现方法代码
- Java中数据库事务处理的实现-JSP教程,Java技巧及代码
- newxy技术零java代码实现数据分页显示 作者:胡立新
- 用java实现论坛ubb的代码
- 3DES加密java的实现代码