当前位置:网站首页>leetcode:163 缺失的区间
leetcode:163 缺失的区间
2022-08-03 02:04:00 【OceanStar的学习笔记】
题目来源
题目描述
给定一个排序的整数数组 nums ,其中元素的范围在 闭区间 [lower, upper] 当中,返回不包含在数组中的缺失区间。
示例:
输入: nums = [0, 1, 3, 50, 75], lower = 0 和 upper = 99,
输出: [“2”, “4->49”, “51->74”, “76->99”]
题目解析
- 数组已经排序,但是并不能二分,因为要求所有的缺失区间
- 因此一次遍历
class Solution {
// 生成"lower->upper"的字符串,如果lower==upper,只用生成"lower"
std::string miss(int lower, int upper){
std::string left = std::to_string(lower);
std::string right;
if(upper > lower){
right = "->" + std::to_string(upper);
}
return left + right;
}
public:
std::vector<std::string> missing_ranges(vector<int>& nums, int low, int high) {
std::vector<std::string> ans;
for (int curr : nums) {
if(curr > low){
ans.push_back(miss(low, curr - 1));
low = curr + 1;
}else if(curr == low){
low = curr + 1;
}
if(curr == high){
return ans;
}
}
if(low <= high){
ans.push_back(miss(low, high));
}
return ans;
}
};
边栏推荐
- 【Arduino】重生之Arduino 学僧(2)----Arduino语言
- openCV第一篇
- rancher集成ldap,实现统一账号登录
- 公司代码学习笔记
- Get the first/last day of the current week, month, quarter in MySQL
- Brute force recursion to dynamic programming 07 (516. Longest palindrome subsequence)
- 国标GB28181协议EasyGBS平台项目现场通知消息过多导致系统卡顿该如何解决?
- 为什么要使用 playwright 做浏览器自动化测试?
- 部门之间,互不信任正常吗?(你是否遇到过)
- radio button、qss文件环境配置
猜你喜欢
随机推荐
数据中台建设(八):数据服务体系建设
.NET in-depth analysis of the LINQ framework (four: IQueryable, IQueryProvider interface details)
韦东山 数码相框 项目学习(五)libjpeg-turbo的移植
什么样的存储服务,才能成为企业数字化创新“加速器”?
IDEA基本使用-创建和删除项目
豆瓣评分9.3的好书,文末给大家抽奖送几本!
如何准备考pmp?
MATLAB绘制填充图(X轴上下两种颜色)
五大靠谱的婚恋相亲APP详细特点缺点分析!
禁用token及无感知更新token功能实现
Wireshark data capture and analysis of the transport layer protocol (TCP protocol)
lombok 下的@Builder和@EqualsAndHashCode(callSuper = true)注解
服务器在线测速系统源码
大厂标配 | 百亿级并发系统设计 | 学完薪资框框涨
会话技术!
[QNX Hypervisor 2.2用户手册]10 虚拟设备参考
工作两年成跳槽高峰期,程序员会在一家公司待多久?
DJI内推码(2022年8月2日更新)
46LVS+Keepalived群集
LVS-NAT模式【案例实验】









