合併兩個已排序的區間列表,並將其作為乙個新的有序區間列表返回。新的區間列表應該通過拼接兩個列表的區間並按公升序排序。
樣例1
輸入: [(1,2),(3,4)] and list2 = [(2,3),(5,6)]
輸出: [(1,4),(5,6)]
解釋:(1,2),(2,3),(3,4) --> (1,4)
(5,6) --> (5,6)
樣例2
輸入: [(1,2),(3,4)] 和 list2 = [(4,5),(6,7)]
輸出: [(1,2),(3,5),(6,7)]
解釋:(1,2) --> (1,2)
(3,4),(4,5) --> (3,5)
(6,7) --> (6,7)
同乙個列表中的區間一定不會重疊。
不同列表中的區間可能會重疊。
/**
* definition of interval:
* classs interval
* }*/bool mycmp(const interval& start, const interval& end)
class solution
for(int j = 0; j < list2.size(); j++)
sort(intervals.begin(), intervals.end(), mycmp);
vectorret;
int size = intervals.size();
for(int i = 0; i < size; i++)
else
else}}
return ret;
}};
合併兩個排序的列表
輸入兩個單調遞增的鍊錶,輸出兩個鍊錶合成後的鍊錶,當然我們需要合成後的鍊錶滿足單調不減規則。輸入 返回值 由於兩個鍊錶都是遞增的,所以我們可以在遍歷的同時,判斷每個鍊錶當前各自值的大小,取出較小的那個,作為新鍊錶的結點,否則取另乙個,直到乙個鍊錶為空,將剩下乙個鍊錶拼接至新鍊錶尾端 注意 建立鍊錶使...
17 合併兩個排序的列表
一般的寫法 public class solution else p p.next if list1 null if list2 null p.next null return head.next 但是,我這樣並不是乙個好答案,因為我每一次都進行了new的操作,浪費了大量的空間!進行簡化後,如下 p...
lintcode 839 合併兩個排序的間隔列表
合併兩個已排序的區間列表,並將其作為乙個新的有序區間列表返回。新的區間列表應該通過拼接兩個列表的區間並按公升序排序。樣例 樣例1輸入 1,2 3,4 and list2 2,3 5,6 輸出 1,4 5,6 解釋 1 2 2,3 3 4 1 4 5,6 5 6 樣例2 輸入 1 2 3,4 和 li...