leetcode 二分查找应用

34. Find First and Last Position of Element in Sorted Array

代码:

cpp 复制代码
class Solution {
public:
    vector<int> searchRange(vector<int>& nums, int target) {
        int low = lowwer_bound(nums,target);
        int high = upper_bound(nums,target);

        if(low == high)
            return {-1,-1};

        return {low,high-1};
    }
    int lowwer_bound(vector<int>& nums,int target)
    {
        int left = 0;
        int right = nums.size();
        int mid = 0;
        while(left < right){
            mid = left + ((right-left)>>1);
            if(nums[mid]>=target){
                right = mid;
            }else{
                left = mid + 1;
            }
        }
        return left;
    }
    int upper_bound(vector<int>& nums,int target){
        int left = 0;
        int right = nums.size();
        int mid = 0;
        while(left < right){
            mid = left + ((right - left)>>1);
            if(nums[mid]>target){
                right = mid;
            }else{
                left = mid +1;
            }
        }
        return left;
    }
};
相关推荐
跳跳糖炒酸奶32 分钟前
第十五讲、Isaaclab中在机器人上添加传感器
人工智能·python·算法·ubuntu·机器人
明月看潮生2 小时前
青少年编程与数学 02-018 C++数据结构与算法 06课题、树
数据结构·c++·算法·青少年编程·编程与数学
小指纹2 小时前
动态规划(一)【背包】
c++·算法·动态规划
_安晓2 小时前
数据结构 -- 图的应用(一)
数据结构·算法·图论
猎猎长风3 小时前
【数据结构和算法】1. 数据结构和算法简介、二分搜索
数据结构·算法
Pasregret3 小时前
模板方法模式:定义算法骨架的设计模式
算法·设计模式·模板方法模式
左灯右行的爱情3 小时前
JVM-卡表
java·jvm·算法
奋斗者1号4 小时前
逻辑回归:使用 S 型函数进行概率预测
算法·机器学习·逻辑回归
CodeJourney.4 小时前
基于DeepSeek与Excel的动态图表构建:技术融合与实践应用
数据库·人工智能·算法·excel