力扣-数组-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;
    }
};
相关推荐
sinat_255487817 分钟前
泛型:超级、扩展、列表·学习笔记
java·windows·学习·算法
切糕师学AI7 分钟前
Elasticsearch RRF(倒数排序融合)技术详解与实践
算法·elasticsearch·搜索引擎·混合搜索·rrf·归一化问题
lihao lihao13 分钟前
进程地址空间
数据结构·c++·算法
Byte不洛14 分钟前
LeetCode双指针经典题
c++·算法·leetcode·双指针
汀、人工智能16 分钟前
[特殊字符] 第16课:最小覆盖子串
数据结构·算法·数据库架构·图论·bfs·最小覆盖子串
米粒119 分钟前
力扣算法刷题 Day 34
算法·leetcode·职场和发展
田梓燊34 分钟前
leetcode 189
算法·leetcode·职场和发展
wuweijianlove1 小时前
算法复杂度的理论边界与实验验证研究的技术3
算法
rm6fEx0Z71 小时前
AUC 与 GAUC:从全局排序到用户内排序的理解
人工智能·算法·机器学习
minji...1 小时前
Linux 多线程(四)线程等待,线程分离,线程管理,C++多线程,pthread库
linux·运维·开发语言·网络·c++·算法