56.合并区间

时游小于 1 分钟LeetCode

56.合并区间

/*
 * @lc app=leetcode.cn id=56 lang=typescript
 *
 * [56] 合并区间
 */

// @lc code=start
function merge(intervals: number[][]): number[][] {
	// 先排序
	intervals.sort((a, b) => a[0] - b[0]);

	for (let i = 0; i < intervals.length - 1; i++) {
		if (intervals[i][1] >= intervals[i + 1][1]) {
			intervals.splice(i + 1, 1);
			i--;
		} else if (intervals[i][1] >= intervals[i + 1][0]) {
			// 合并
			intervals[i] = [intervals[i][0], intervals[i + 1][1]];
			intervals.splice(i + 1, 1);
			i--;
		}
	}
	return intervals;
}

merge([
	[1, 4],
	[2, 3],
]);
// @lc code=end

上次编辑于:
贡献者: 15327360835
Loading...