题目链接
英文链接:https://leetcode.com/problems/merge-intervals/
中文链接:https://leetcode-cn.com/problems/merge-intervals/
题目详述
给出一个区间的集合,请合并所有重叠的区间。
示例 1:
1
2
3输入: [[1,3],[2,6],[8,10],[15,18]]
输出: [[1,6],[8,10],[15,18]]
解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例 2:
1
2
3输入: [[1,4],[4,5]]
输出: [[1,5]]
解释: 区间 [1,4] 和 [4,5] 可被视为重叠区间。
题目详解
- 先按照 Interval.start 从小到大排序,再进行遍历操作。
- 设当前结点为 cur,前一个结点为 pre,如果 pre.end >= cur.start,就合并两个区间,即 pre.end = max(pre.end, cur.end)。
1 | /** |