給出乙個區間的集合,請合併所有重疊的區間。
示例 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] 可被視為重疊區間。
先排序(按照區間的第一位置的數值大小排序,從小到大),這裡採用快速排序
記錄當前的區間(用記憶體來記錄目前記錄的區間,不斷迭代這個區間直到完成目標之後,再存起來)
class
solution
while
( i < j && a[i][0
]<= k[0]
)++i;
if( i < j )
} a[i]
= k;
sort
(a,s,i-1)
;sort
(a,i+
1,e);}
vectorint>>
merge
(vectorint>>
& intervals)))
;}i = intervals[index][0
];j = intervals[index][1
];last = index;
}else}if
(last !=-1
)));
}return ans;}}
;
演算法 區間重合推斷
題目描寫敘述 給定乙個源區間 x,y 和n個無序的目標區間 x1,y1 x2,y2 xn,y,推斷給定的源區間 x,y 在不在目標區間內。比如 給定源區間 1 6 和目標區間 1 2 2 4 4 9 就可以覺得區間 1 6 在目標區間內,由於源區間的並集為 1 9 試想一下,如今在這種乙個目標區間的...
區間重合判斷 C語言實現
問題描述 給定乙個源區間 x,y y x 和n個無序的目標區間 x1,y1 x2,y2 x3,y3 xn,yn 判斷源區間 x,y 是不是在目標區間內?例如給定源區間 1,6 和一組無序的目標區間 2,3 1,2 2,9 3,4 即可認為區間 1,6 在區間 2,3 1,2 2,9 3,4 內。解決...
程式設計之美 區間重合判斷
問題描述 給定乙個源區間 x,y 和若干個無序的目標區間 x0,y0 x1,y1 x2,y2 xn,yn 判斷源區間是否在目標區間內。思路 1 分解源區間 把目標區間逐一的對映在源區間上,可以將源區間分解為更小的區間。最後看是否能將源區間全部分解。例如 源區間 目標區間 step 1 目標區間 可以...