先排序,再把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
};