资讯详情

DeepSeek LeetCode 56. 合并区间 JavaScript实现

📅 2026/9/15 1:57:28 | 华诺云谱 👁 阅读
DeepSeek    LeetCode 56. 合并区间 JavaScript实现
以下是 JavaScript 实现 LeetCode 56. 合并区间 的代码包含详细注释/** * param {number[][]} intervals * return {number[][]} */varmergefunction(intervals){// 边界条件空数组直接返回if(intervals.length0)return[];// 按区间起点升序排序intervals.sort((a,b)a[0]-b[0]);// 结果数组先放入第一个区间constmerged[intervals[0]];// 从第二个区间开始遍历for(leti1;iintervals.length;i){constcurrentintervals[i];constlastmerged[merged.length-1];// 结果中最后一个区间// 如果当前区间起点 最后一个区间的终点说明有重叠if(current[0]last[1]){// 合并更新终点为两者较大值last[1]Math.max(last[1],current[1]);}else{// 无重叠将当前区间加入结果merged.push(current);}}returnmerged;};思路说明排序按每个区间的起始值升序排序这样所有可能重叠的区间会相邻排列。遍历合并· 使用一个结果数组 merged初始存放第一个区间。· 依次检查后续区间是否与 merged 的最后一个区间重叠即当前区间起点 ≤ 最后一个区间的终点。· 若重叠则更新最后一个区间的终点为两者终点的较大值。· 若不重叠则将当前区间加入 merged。返回结果。复杂度分析· 时间复杂度O(n log n)主要开销来自排序。· 空间复杂度O(n)用于存储结果数组不考虑排序的额外空间。若考虑排序的内部空间可能为 O(log n)。
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。