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;
    }
};
相关推荐
mit6.82417 小时前
博弈论nim^|sg函数|涂色dp
算法
CoovallyAIHub17 小时前
复杂工业场景如何实现3D实例与部件一体化分割?多视角贝叶斯融合的分层图像引导框架
深度学习·算法·计算机视觉
2401_8414956417 小时前
【自然语言处理】单字与双字字频统计算法设计
人工智能·python·算法·自然语言处理·单字·双字·字频统计
旧梦吟17 小时前
脚本网页 地球演化
前端·算法·css3·html5·pygame
旺仔小拳头..17 小时前
数据结构(一)———线性表之顺序表、单向链表
数据结构·算法
xiaoxue..17 小时前
哨兵节点与快慢指针解决链表算法难题
前端·javascript·数据结构·算法·链表
拉姆哥的小屋17 小时前
从400维向量到160000维矩阵:基于深度学习的火焰参数预测系统全解析
开发语言·人工智能·python·深度学习·线性代数·算法·矩阵
矢鱼17 小时前
python中对应c++容器的结构
开发语言·c++·python·算法
古城小栈17 小时前
Java 内存优化:JDK 22 ZGC 垃圾收集器调优
java·python·算法
SamtecChina202317 小时前
Electronica现场演示 | Samtec前面板解决方案
大数据·人工智能·算法·计算机外设