[56] 合并区间
1 /** 2 * @param {number[][]} intervals 3 * @return {number[][]} 4 */ 5 var merge = function (intervals) { 6 //排序 7 intervals.sort(function (a, b) { 8 if (a[0] != b[0]) { 9 return a[0] - b[0] 10 } 11 return a[1] - b[1] 12 }) 13 const ans = [intervals[0]] 14 for (let i = 1; i < intervals.length; i++) { 15 const end = ans.length - 1 16 if (intervals[i][0] > ans[end][1]) { 17 ans.push(intervals[i]) 18 } else { 19 if (intervals[i][1] > ans[end][1]) { 20 ans[end][1] = intervals[i][1] 21 } 22 } 23 24 } 25 return ans 26 };