当前位置:网站首页>2022-7-7 Leetcode 34.在排序数组中查找元素的第一个和最后一个位置
2022-7-7 Leetcode 34.在排序数组中查找元素的第一个和最后一个位置
2022-07-07 11:36:00 【weixin_51187533】


1、左右区间要单独查找,时间复杂度为 O ( l o g N ) O(logN) O(logN)
2、查找右边界的时候,左边向右收缩;查找左边界的时候,右边向左收缩。
class Solution {
public:
int getR(vector<int>& nums, int target){
int l = 0, r = nums.size()-1;
int rightborder = -1;
while (l <= r){
int mid = l + (r - l)/2;
if (nums[mid] == target){
l = mid + 1;
rightborder = mid;
}else if (nums[mid] > target){
r = mid - 1;
}else {
l = mid + 1;
}
}
return rightborder;
}
int getL(vector<int>& nums, int target){
int l = 0, r = nums.size()-1;
int leftborder = -1;
while (l <= r){
int mid = l + (r - l)/2;
if (nums[mid] == target){
r = mid - 1;
leftborder = mid;
}else if (nums[mid] > target){
r = mid - 1;
}else {
l = mid + 1;
}
}
return leftborder;
}
vector<int> searchRange(vector<int>& nums, int target) {
int leftborder = getL(nums, target);
int rightborder = getR(nums, target);
return {
leftborder, rightborder};
}
};
边栏推荐
- OSI seven layer model
- Flink | 多流转换
- Solve the cache breakdown problem
- MySQL error 28 and solution
- 信号强度(RSSI)知识整理
- Fast development board pinctrl and GPIO subsystem experiment for itop-imx6ull - modify the device tree file
- cmake 学习使用笔记(一)
- PACP学习笔记一:使用 PCAP 编程
- 最佳实践 | 用腾讯云AI意愿核身为电话合规保驾护航
- LED light of single chip microcomputer learning notes
猜你喜欢

1、深拷贝 2、call apply bind 3、for of for in 区别

Write it down once Net a new energy system thread surge analysis

QQ medicine, Tencent ticket

Japanese government and enterprise employees got drunk and lost 460000 information USB flash drives. They publicly apologized and disclosed password rules

分布式事务解决方案

QQ的药,腾讯的票

JS缓动动画原理教学(超细节)

聊聊伪共享

Introduction and basic use of stored procedures

My "troublesome" subordinates after 00: not bad for money, against leaders, and resist overtime
随机推荐
MongoDB的导入导出、备份恢复总结
User management summary of mongodb
Isprs2021/ remote sensing image cloud detection: a geographic information driven method and a new large-scale remote sensing cloud / snow detection data set
DrawerLayout禁止侧滑显示
LeetCode_二分搜索_中等_153.寻找旋转排序数组中的最小值
Realize the IP address home display function and number home query
学习突围2 - 关于高效学习的方法
Ways to improve the performance of raspberry pie
Read PG in data warehouse in one article_ stat
How to make join run faster?
作战图鉴:12大场景详述容器安全建设要求
High end for 8 years, how is Yadi now?
[learning notes] agc010
JS判断一个对象是否为空
Show the mathematical formula in El table
自定义线程池拒绝策略
MongoDB的用户管理总结
MongoDB内部的存储原理
Clion mingw64 Chinese garbled code
Custom thread pool rejection policy