沧浪seo网站优化软件,朝阳做网站,让别人做网站注意事项,宁波白云医院网站建设以数组 intervals 表示若干个区间的集合#xff0c;其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间#xff0c;并返回 一个不重叠的区间数组#xff0c;该数组需恰好覆盖输入中的所有区间 。
输入#xff1a;intervals [[1,3],[2,6],[8,10],[15,…以数组 intervals 表示若干个区间的集合其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间并返回 一个不重叠的区间数组该数组需恰好覆盖输入中的所有区间 。
输入intervals [[1,3],[2,6],[8,10],[15,18]]
输出[[1,6],[8,10],[15,18]]
解释区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].
输入intervals [[1,4],[4,5]]
输出[[1,5]]
解释区间 [1,4] 和 [4,5] 可被视为重叠区间。
代码实现
class Solution {public int[][] merge(int[][] intervals) {// 排序Arrays.sort(intervals, new Comparatorint[]() {public int compare(int[] arr1, int[] arr2) {return arr1[0] - arr2[0];}});// 对于 2L 1R 大小关系Listint[] list new ArrayList();for (int i 0; i intervals.length; i) {int[] cur intervals[i];if (list.isEmpty()) {list.add(cur);} else if (cur[0] list.get(list.size() - 1)[1]) {list.get(list.size() - 1)[1] Math.max(cur[1], list.get(list.size() - 1)[1]);} else {list.add(cur);}}return list.toArray(new int[list.size()][]);}
}
原题链接力扣
视频讲解链接合并区间_哔哩哔哩_bilibili