56.合并数组
先排序,再把intervas中的数组逐个与merged中的上一个数组比较要不要合并
/**
* @param {number[][]} intervals
* @return {number[][]}
*/
var merge = function(intervals) {
if (intervals.length === 0) return []
intervals.sort((a, b) => a[0] - b[0])
const merged = [intervals[0]]
for (let i = 1; i < intervals.length; i++) {
const last = merged[merged.length - 1] //这样就不用像我写的那样while了
if (intervals[i][0] <= last[1]) {
last[1] = Math.max(last[1], intervals[i][1])
} else {
merged.push(intervals[i])
}
}
return merged
};

浙公网安备 33010602011771号