leetcode 56 合併區間(貪心)

2021-08-15 22:40:19 字數 544 閱讀 5524

給出乙個區間的集合, 請合併所有重疊的區間。

示例:給出[1,3],[2,6],[8,10],[15,18],

返回[1,6],[8,10],[15,18].

貪心,先以start大小排序,這樣保證start的是有序的。

然後擴張end。**也很容易理解,複雜度是nlogn

/**

* definition for an interval.

* struct interval

* interval(int s, int e) : start(s), end(e) {}

* };

*/class solution );

res.push_back(intervals[0]);

int cur = 0;

for (int i = 1; i < intervals.size(); ++i)

else

}return res;

}};

Leetcode 56 合併區間

對所有區間按起點位置進行排序 遍歷到k點後的 l,r 已知的包含k點的最大區間 遍歷到k 1點,若該起點屬於 l,r 那麼可能擴充套件這個區間的終點,r max r,k 1點的end definition for an interval.struct interval interval int s,...

LeetCode 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 可被視為重疊區間。解題思路 1...

LeetCode 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 可被視為重疊區間。題意還是好理...