题目: 给出一个区间的集合,请合并所有重叠的区间。
输入: [[1,3],[2,6],[8,10],[15,18]]
输出: [[1,6],[8,10],[15,18]]
解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].
两个区间有重叠, 那么一定是 nums[i].right>=nums[j].left ;
i<j; nums代表区间
贪心 每一个区间按左端点排序
记录当前区间左右端点left right, 从当前区间出发,循环寻找它后面的区间[left2,right2]里
左端点left2 <=right 说明有重叠。 更新right=max(right, right2) 注意不是 right=right2
直到遇到边界 或者没有找到重叠 说明当前[left right] 是一个独立区间 加入答案。
public int[][] merge(int[][] nums) {
if (nums.length == 0 || nums[