当前位置: 首页 > news >正文

Leetcode 23. 合并 K 个升序链表 (Day 12)

js一刷 最佳方法

varmerge=function(list1,list2){constdummy=newListNode();letcur=dummy;while(list1&&list2){if(list1.val<list2.val){cur.next=list1;list1=list1.next;}else{cur.next=list2;list2=list2.next;}cur=cur.next;}cur.next=list1?list1:list2;returndummy.next;};varmergeKLists=function(lists){letlen=lists.length;if(len===0)returnnull;if(len===1)returnlists[0];letleft=lists.slice(0,Math.floor(len/2));letright=lists.slice(Math.floor(len/2),len);returnmerge(mergeKLists(left),mergeKLists(right));};

核心还是归并排序
时间复杂度 = O(L log m),其中L是结点树,m是数组长度(如图)

js一刷暴力

varmerge=function(l1,l2){letdummy=newListNode(-Infinity);letcur=dummy;while(l1&&l2){if(l1.val<l2.val){cur.next=l1;l1=l1.next;}else{cur.next=l2;l2=l2.next;}cur=cur.next;}cur.next=l1||l2;returndummy.next;}varmergeKLists=function(lists){lethead=null;for(leti=0;i<lists.length;i++){head=merge(head,lists[i]);}returnhead;};

时间复杂度 = O(L*m)

js 一刷最小堆

varmergeKLists=function(lists){constheap=newMinPriorityQueue(node=>node.val);for(constxoflists){if(x)heap.enqueue(x);}letdummy=newListNode();letcur=dummy;while(!heap.isEmpty()){letnode=heap.dequeue();cur.next=node;if(node.next)heap.enqueue(node.next);cur=cur.next;}returndummy.next;};

要知道 最小堆的api MinPriorityQueue(node=>node.val);
下图pq是最小堆

时间复杂度=O(L log k),每次入堆和出堆操作的复杂度是log k,总共要进行L次操作,L是总结点数

http://www.jsqmd.com/news/201670/

相关文章:

  • Unity游戏翻译神器:XUnity Auto Translator实战使用指南
  • 零基础学NPM:从安装到发布第一个包
  • 漫画分镜理解任务中GLM-4.6V-Flash-WEB的表现水平测评
  • 工业PLC组网中USB转485驱动的完整示例
  • XUnity Auto Translator 完整使用手册:轻松实现游戏实时翻译
  • 基于GLM-4.6V-Flash-WEB的无障碍访问辅助工具构想
  • 结合C#开发桌面应用调用GLM-4.6V-Flash-WEB API接口的可行性分析
  • GLM-4.6V-Flash-WEB商业授权用户专享Token折扣政策
  • 用TeXLive快速构建技术文档原型
  • XUnity Auto Translator完全掌握:Unity游戏翻译终极配置指南
  • HTML表格图像转结构化数据:GLM-4.6V-Flash-WEB的新用途
  • ARM平台声卡驱动ALSA架构图解说明
  • XUnity Auto Translator 游戏翻译插件:零基础快速配置教程,轻松突破多语言游戏障碍
  • FLUTTER写UI太痛苦了开发效率提升秘籍
  • 多语言场景下GLM-4.6V-Flash-WEB的表现如何?中文优先还是英文更强?
  • Token计费模式详解:调用GLM-4.6V-Flash-WEB按什么标准收费?
  • 基于GLM-4.6V-Flash-WEB的智能客服图文应答系统原型设计
  • 软磁屏蔽电感封装:Altium 3D模型构建注意事项
  • 用 PaddleOCRSharp 的 .NET 同学注意:6.0.0 这波 BUG 够“硬核
  • 农业遥感图像分析:GLM-4.6V-Flash-WEB能否胜任作物监测任务?
  • 基于SpringBoot的校园讲座预约系统设计与实现毕设
  • Unity游戏翻译终极指南:多语言无障碍畅玩完整教程
  • amazingdotnet 2025
  • Docker镜像源替换为中国区节点以加速GLM-4.6V-Flash-WEB部署
  • 1小时用RPA打造业务流程原型:快速验证你的想法
  • 对比测试:QWEN3与传统开发效率提升300%?
  • 大数据领域数据架构的云计算集成方案
  • YAAK在电商系统压力测试中的实战应用
  • 告别复制粘贴风险:智能代码片段管理方案
  • 导师推荐9个AI论文平台,MBA论文写作必备!