163.缺失的区间

时游小于 1 分钟LeetCode

163.缺失的区间

/*
 * @lc app=leetcode.cn id=136 lang=typescript
 *
 * [163] 缺失的区间
 */

// @lc code=start
function findMissingRanges(
	nums: number[],
	lower: number,
	upper: number
): number[][] {
	let res: number[][] = [];
	// 空数组时,最大区间
	if (nums.length === 0) return [[lower, upper]];
	if (nums[0] !== lower) {
		// 判断负数区间
		res.push([lower, nums[0] - 1]);
	}
	for (let i = 0; i < nums.length - 1; i++) {
		// 判断中间区间
		if (nums[i] + 1 != nums[i + 1]) {
			res.push([nums[i] + 1, nums[i + 1] - 1]);
		}
	}
	if (nums[nums.length - 1] !== upper) {
		// 判断最大区间
		res.push([nums[nums.length - 1] + 1, upper]);
	}
	console.log(res);

	return res;
}

findMissingRanges([], 1, 1);
// @lc code=end

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