news 2026/4/22 21:35:39

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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是总结点数

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 17:23:03

传统指标编写vsAI生成:效率对比实测

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个效率对比演示工具&#xff0c;左侧显示手动编写通达信指标的传统流程&#xff08;分析需求→查语法→调试代码&#xff09;&#xff0c;右侧展示AI生成流程&#xff08;输…

作者头像 李华
网站建设 2026/4/23 13:28:55

51单片机蜂鸣器硬件调试技巧:电压与电流检测方法

51单片机驱动蜂鸣器&#xff0c;为何“代码正确却无声”&#xff1f;——实战电压与电流检测全解析你有没有遇到过这样的场景&#xff1a;程序烧录成功&#xff0c;逻辑清晰无误&#xff0c;IO口也配置成了输出模式&#xff0c;可一到触发蜂鸣器的那一刻&#xff0c;设备却鸦雀…

作者头像 李华
网站建设 2026/4/23 13:45:04

AI一键搞定MySQL安装:快马平台智能配置指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个AI辅助MySQL安装工具&#xff0c;功能包括&#xff1a;1.自动检测用户操作系统类型和版本(Win/Mac/Linux) 2.根据系统生成对应的MySQL安装脚本 3.自动处理依赖项安装 4.提…

作者头像 李华
网站建设 2026/4/23 13:45:03

RABBITMQ实战应用案例分享

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个RABBITMQ实战项目&#xff0c;包含完整的功能实现和部署方案。点击项目生成按钮&#xff0c;等待项目生成完整后预览效果 RabbitMQ实战应用案例分享&#xff1a;从零搭建消…

作者头像 李华
网站建设 2026/4/23 12:24:18

时序逻辑电路设计实验:Moore型状态机实现超详细版

从零构建Moore型状态机&#xff1a;一次彻底的时序逻辑实战你有没有遇到过这样的情况&#xff1f;明明逻辑写得没错&#xff0c;仿真波形却总在不该跳变的地方“抽风”&#xff1b;或者输入信号刚一变化&#xff0c;输出就跟着抖动&#xff0c;搞得下游电路误动作。如果你正在学…

作者头像 李华