一、什么是二分查找
假设给定的数组中的元素是一个有序的状态,比如是单调递减或者是单调递增的状态,对于这种情况可以使用二分查找来完成。即二分查找需要满足两个条件:
(1)数组存储
(2)元素有序,单调性
二、解法思路图解
(1)定义两指针left和right;left指向数组头部,right指向数组尾部;
(2)求两指针中间值mid=(left+right)/2,获取mid位置的值nums[mid];
(3)用nums[mid]与所求值6比;较因mid值小于6;又因数组为升序所以mid左部元素均小于6;
(4)接下来只需在mid右边查找;所以left指针移至mid+1处;
(5)重复(1),(2),(3),(4)步骤,如果mid值等于所求值六则返回下标;如果left>right 则表示没有该元素,返回-1;