56 合併區間

2021-10-20 01:21:43 字數 908 閱讀 2967

以陣列intervals表示若干個區間的集合,其中單個區間為intervals[i] = [starti, endi]。請你合併所有重疊的區間,並返回乙個不重疊的區間陣列,該陣列需恰好覆蓋輸入中的所有區間。

示例 1:

輸入:intervals = [[1,3],[2,6],[8,10],[15,18]]輸出:[[1,6],[8,10],[15,18]]解釋:區間 [1,3] 和 [2,6] 重疊, 將它們合併為 [1,6].
示例 2:

輸入:intervals = [[1,4],[4,5]]輸出:[[1,5]]解釋:區間 [1,4] 和 [4,5] 可被視為重疊區間。
先將陣列排序

然後比較下乙個區間的左邊是否大於當前區間的右邊

如果大於則重新插入

如果小於則比較兩個右區間的大小,如果下乙個區間的右邊大,則改變當前區間。

最後再插入

需要注意vector>的插入方法:

b.push_back(l);

b.push_back(r);

num.push_back(b);

b.clear();

class solution 

l=a[0];

r=a[1];

}else

}if(r!=-2e9)

return num;

}};

56 合併區間

給出乙個區間的集合,請合併所有重疊的區間。示例 1 輸入 1,3 2,6 8,10 15,18 輸出 1,6 8,10 15,18 解釋 區間 1,3 和 2,6 重疊,將它們合併為 1,6 示例 2 輸入 1,4 4,5 輸出 1,5 解釋 區間 1,4 和 4,5 可被視為重疊區間。思路 注釋 ...

56 合併區間

給出乙個區間的集合,請合併所有重疊的區間。示例 1 輸入 1,3 2,6 8,10 15,18 輸出 1,6 8,10 15,18 解釋 區間 1,3 和 2,6 重疊,將它們合併為 1,6 示例 2 輸入 1,4 4,5 輸出 1,5 解釋 區間 1,4 和 4,5 可被視為重疊區間。思路 注釋 ...

56 合併區間

給出乙個區間的集合,請合併所有重疊的區間。輸入 1,3 2,6 8,10 15,18 輸出 1,6 8,10 15,18 解釋 區間 1,3 和 2,6 重疊,將它們合併為 1,6 輸入 1,4 4,5 輸出 1,5 解釋 區間 1,4 和 4,5 可被視為重疊區間。先按首位置進行排序,假設a 1,...