当前位置:网站首页>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;
}
};
边栏推荐
猜你喜欢

为什么要使用 playwright 做浏览器自动化测试?

问题记录:jenkins构建时报错The goal you specified requires a project to execute but there is no POM in...

孩子坐不住就是不专注?猿辅导揭秘专注力的三大误区

5.软件测试-----自动化测试

236. The binary tree in recent common ancestor

【云原生】服务行业案例-不可预测的并发场景解决方案

任意版本JLink驱动官方下载指引

visual studio 2012 为啥这么优秀

5. Software testing ----- automated testing

实现统一账号登录,sonarqube集成ldap
随机推荐
超级复杂可贴图布局的初级智能文本提示器
YYGH-BUG-06
禁用token及无感知更新token功能实现
国标GB28181协议EasyGBS平台项目现场通知消息过多导致系统卡顿该如何解决?
initramfs详解-----初识initramfs
钻石基础知识介绍
HCIP第十二天_二层MPLS实验
Conversational Technology!
易购数码类电商商城网页设计与实现项目源码
企业云成本管控,你真的做对了吗?
[Static type and dynamic type compile check and run check in Objective-C]
常用工具链和虚拟环境-WSL
kubernetes部署ldap
ROS通信模块:秒懂话题通信
236. The binary tree in recent common ancestor
LVS负载均衡群集及部署LVS-NAT实验
五大靠谱的婚恋相亲APP详细特点缺点分析!
如何备考PMP才能一次通过?
孩子坐不住就是不专注?猿辅导揭秘专注力的三大误区
Guidelines for the use of SVA in UVM