[leetcode]163. Missing Ranges缺失范围
Given a sorted integer array nums, where the range of elements are in the inclusive range [lower, upper], return its missing ranges.
Example:
Input: nums = [0, 1, 3, 50, 75], lower = 0 and upper = 99,
Output: ["2", "4->49", "51->74", "76->99"]
题意:
给定一个区间和一堆数。统计一下在此区间有哪些数没在数组中出现,结果用区间表示。
思路:
这题跟[leetcode]228. Summary Ranges区间统计思路一致
区别是因为规定了 [lower, upper] 要考虑更多的边界
代码:
class Solution {
public List<String> findMissingRanges(int[] a, int lower, int upper) {
List<String> result = new ArrayList<>();
if(a.length == 0) {
group(result, lower, upper );
return result;
}
if(a[0] != lower){
group(result, lower, a[0] - 1);
}
for(int i = 1; i < a.length; i++ ){
if( a[i] != a[i-1] && a[i] != a[i-1] + 1){
group(result, a[i-1] + 1, a[i] - 1 );
}
}
if(upper != a[a.length - 1] ){
group(result, a[a.length - 1] + 1 , upper);
}
return result;
}
private void group(List<String> list, int start, int end){
if(start == end ){
list.add(start +"");
}else{
list.add(start + "->" + end );
}
}
}
[leetcode]163. Missing Ranges缺失范围的更多相关文章
- [LeetCode] 163. Missing Ranges 缺失区间
Given a sorted integer array nums, where the range of elements are in the inclusive range [lower, up ...
- LeetCode 163. Missing Ranges (缺失的区间)$
Given a sorted integer array where the range of elements are in the inclusive range [lower, upper], ...
- ✡ leetcode 163. Missing Ranges 找出缺失范围 --------- java
Given a sorted integer array where the range of elements are in the inclusive range [lower, upper], ...
- [LeetCode#163] Missing Ranges
Problem: Given a sorted integer array where the range of elements are [lower, upper] inclusive, retu ...
- [LeetCode] Missing Ranges 缺失区间
Given a sorted integer array where the range of elements are [0, 99] inclusive, return its missing r ...
- 【LeetCode】163. Missing Ranges 解题报告 (C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 遍历 日期 题目地址:https://leetcode ...
- 163. Missing Ranges
题目: Given a sorted integer array where the range of elements are [lower, upper] inclusive, return it ...
- 【LeetCode】Missing Ranges
Missing Ranges Given a sorted integer array where the range of elements are [lower, upper] inclusive ...
- LC 163. Missing Ranges 【lock, hard】
Given a sorted integer array nums, where the range of elements are in the inclusive range [lower, up ...
随机推荐
- Windows7无法访问共享文件夹(0x800704cf,0x80070035)解决方法
Windows7系统突然无法访问Linux的samba服务器,出现0x800704cf或者0x80070035错误,也不能访问其他windows机器的共享文件夹,解决方案如下两张图,配置与下面两张图为 ...
- win7连接centos的nfs
nfs的服务端这边设置忽略. 主要关于权限的问题: Windows7 NFS客户端,使用mount命令挂载NFS服务之后,文件系统对Win7只读,无法写入文件,无法新建文件夹解决方法. 在win的cm ...
- 利用Red Blob游戏介绍A*算法
转自:http://gad.qq.com/program/translateview/7194337 在游戏中,我们经常想要找到从一个位置到另一个位置的路径.我们不只是想要找到最短距离,同时也要考虑旅 ...
- Spark学习笔记5:Spark集群架构
Spark的一大好处就是可以通过增加机器数量并使用集群模式运行,来扩展计算能力.Spark可以在各种各样的集群管理器(Hadoop YARN , Apache Mesos , 还有Spark自带的独立 ...
- ubuntu18.04修改时区
运行如下命令: sudo tzselect 然后选择亚洲Asia,继续选择中国China,最后选择北京Beijing. 然后创建时区软链 sudo ln -sf /usr/share/zoneinfo ...
- Delphi Webbrowser使用方法详解(一)
1.webbroser介绍 该组件是一个浏览器组件,可以显示一个指定地址的网页.设置网页打开时的主页以及对网页进行相关的操作,同时也可以对HTML文件进行剪切.复制.粘贴.删除等操作.该 组件在Int ...
- direct path read/write (直接路径读/写)
转载:http://www.dbtan.com/2010/04/direct-path-readwrite.html direct path read/write (直接路径读/写): 直接路径读(d ...
- [Python] numpy.random.rand
numpy.random.rand numpy.random.rand(d0, d1, ..., dn) Random values in a given shape. Create an array ...
- NHibernate.Cfg.HibernateConfigException
在用NHibernate 框架做web 项目时,当项目被成功编译后,按F5 启动调试时,一开始就出现这个错误,刚开始就很郁闷,到底出在哪里?连自己都 不知道,在网上搜来搜去,找了很多的资料终于弄明白了 ...
- python文件操作与字符编码
知识内容: 1.文件对象与文件处理流程 2.基本操作 3.上下文管理 4.文件的修改与文件内光标的移动 5.字符编码 一.文件对象与文件处理流程 1.文件对象 (1)文件分类 按文件中数据的组织形式可 ...