用C++实战演示二分查找算法实例
最编程
2024-07-31 17:28:51
...
704. 二分查找
注意:
①left <= right,这里的=号是最后一次通过下标mid来判断
②在偶数的时候mid,左右无所谓,因为left和right都有1;
参考代码
class Solution {
public:
int search(vector<int>& nums, int target) {
int left = 0, right = nums.size() - 1;
while(left <= right)
{
int mid = left + (right - left) / 2;
if(nums[mid] < target) left = mid + 1;
else if(nums[mid] > target) right = mid - 1;
else return mid;
}
return -1;
}
};
推荐阅读