Array----- 56. Merge Intervals(合并区间)
来源:互联网 发布:淘宝ulzzang短发女模特 编辑:程序博客网 时间:2024/05/22 03:49
原题目
合并区间,按照题目意思就是前一个与后一个有交叉的话就可以进行合并。那么首先我们要分清楚前后,也就是将区间排序。因为已经提示我们了Interval类,因此在这个类中只能是通过新建比较类来实现,另一中实现Comparable接口的方式不适合这里。 区间有了顺序直接前后合并就行了。
public List<Interval> merge(List<Interval> intervals) { if(intervals==null||intervals.size()==0){ return intervals; } Collections.sort(intervals,new Cmp()); Interval last=intervals.get(0); for(int i=1;i<intervals.size();i++){ Interval current=intervals.get(i); if(last.end>=current.end){ last.end=Math.max(last.end,current.end); intervals.remove(i); i--; }else { last=current; } } return intervals;}class Cmp implements Comparator<Interval>{ @Override public int compare(Interval o1,Interval o2){ return o1.start-o2.start; }}
阅读全文
0 0
- Array----- 56. Merge Intervals(合并区间)
- 【区间合并】Merge Intervals
- Merge Intervals 合并区间
- 合并区间 Merge Intervals
- LeetCode 56. Merge Intervals(合并区间)
- 56. Merge Intervals 对区间进行合并
- LeetCode 56. Merge Intervals 合并区间
- leetcode 56. Merge Intervals 区间合并
- Merge Intervals 合并区间@LeetCode
- Merge Intervals 多区间合并
- leetCode 56.Merge Intervals (合并区间) 解题思路和方法
- LeetCode----56. Merge Intervals(合并包含重复区间的数组)
- LeetCode | 56. Merge Intervals——合并区间
- LeetCode | Merge Intervals(合并区间间隔)
- LeetCode-56 Merge Intervals(合并区间)
- leetcode-56 Merge Intervals 合并区间
- Leetcode 56 - Merge Intervals(区间合并)
- leetcode.array--56. Merge Intervals
- ECharts 点击事件的 param参数
- "_OBJC_CLASS_$_CMMotionManager" referenced from:
- Ubuntu下在环境中配置opencv
- Selenium 的具体操作(浏览器,鼠标,键盘等)
- Oracle12cRAC搭建手册
- Array----- 56. Merge Intervals(合并区间)
- Codeforces Round #424 (Div. 2)C. Jury Marks 暴力 D. Office Keys 二分 E. Cards Sorting 树状数组
- Hadoop配置单节点,DataNode没有启动
- poj2774 Long Long Message(后缀数组)
- poj3311 状态压缩dp
- 判断页面鼠标滚动的方向
- CentOS7开机启动管理systemd简介及使用
- Linux 6上使用UDEV绑定共享存储
- 二叉搜索树的基本操作