二分查找
1.1 概念
二分查找法,又称折半查找法。但该方法是建立在有序的前提下的,基本思路就是:
先找到那个有序序列的中间元素mid,然后拿它和要找的元素K进行比较,就可以初步判断K所在范围,既然查找范围已确定,自然该范围之外的元素就可以不用再查找了。当然接下来还会按照上面的步骤反复查找下去。
因为二分查找每一次查找都可以缩减掉一半的查找范围,由此可以知道二分查找法的时间复杂度是: log2( N )
使用二分查找有两个限制条件:
- 查找的数量只能是一个,不能是多个
- 查找的对象在逻辑上必须是有序的
1.2 代码实现
代码思路:
具体实现:
/**
* @author wuli居三倌
* @ClassName: TestBinarySearch
* @Description: 二分查找
* @Version 1.0
**/
public class TestBinarySearch {
public static void main(String[] args) {
//前提: