力扣-数组-704 二分查找

解析

经典二分,重点在于左闭右闭区间约定好后,根据定义更新边界

代码

cpp 复制代码
class Solution {
public:
    int search(vector<int>& nums, int target) {
        int left = 0, right = nums.size() - 1;
        while(left <= right){
            int mid = (left + right) / 2;
            if(nums[mid] < target){
                left = mid + 1;
            }else if(nums[mid] > target){
                right = mid - 1;
            }else{
                return mid;
            }
        }
        return -1;
    }
};
相关推荐
松间听晚7 小时前
Agentic RL 环境和代码学习:以HGPO为例
算法
智者知已应修善业7 小时前
【51单片机用T0定时器方式1,实现0.5S的时间间隔实现第一次一个灯亮、第二次二个灯亮,直到全部灯亮,然后重复整个过程】2023-12-29
c++·经验分享·笔记·算法·51单片机
小许同学记录成长8 小时前
几何体编辑与布尔运算
算法·无人机
fanged8 小时前
简单看看3A算法2(TODO)
算法
智者知已应修善业8 小时前
【51单片机4位静态数码管显示1234】2023-11-14
c++·经验分享·笔记·算法·51单片机
♡すぎ♡8 小时前
镜面 IBL 预过滤贴图的计算
算法·计算机图形学·贴图·pbr
Lsk_Smion8 小时前
力扣实训 _ [200].岛屿数量
算法·leetcode·深度优先
Boom_Shu9 小时前
长方形的关系
数据结构·c++·算法
ZhengEnCi9 小时前
O07-银行家算法
算法
装不满的克莱因瓶9 小时前
图像尺寸调整:缩放矩阵如何改变像素坐标?
人工智能·线性代数·数学·算法·机器学习·矩阵