news 2026/6/15 17:54:13

合并两个有序链表:双指针迭代法实现(C++)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
合并两个有序链表:双指针迭代法实现(C++)

一、问题描述

将两个升序链表合并为一个新的升序链表并返回,新链表是通过拼接给定的两个链表的所有节点组成的。

示例:

  • 输入:l1 = [1,2,4],l2 = [1,3,4],输出:[1,1,2,3,4,4]
  • 输入:l1 = [],l2 = [],输出:[]
  • 输入:l1 = [],l2 = [0],输出:[0]

二、解题思路

1. 递推关系分析

合并两个升序链表的核心是逐个比较两个链表的当前节点值,选择较小的节点接入新链表,直到其中一个链表遍历完毕。

  • 若链表 l1 的当前节点值 ≤ 链表 l2 的当前节点值,将 l1 的当前节点接入新链表,l1 指针后移;
  • 若链表 l2 的当前节点值更小,将 l2 的当前节点接入新链表,l2 指针后移;
  • 当其中一个链表遍历完成后,直接将另一个链表的剩余节点拼接至新链表末尾即可。

为简化头节点为空的边界处理,引入虚拟头节点,避免单独处理首个节点的选择逻辑。

2. 算法选择

  • 递归法:通过递归调用合并剩余节点,代码简洁但会产生递归调用栈,空间复杂度为 O (m+n)(m、n 为两个链表的长度),且递归深度较大时可能出现栈溢出;
  • 双指针迭代法:用指针遍历两个链表并拼接节点,仅使用常数级额外空间,时间复杂度为 O (m+n),空间复杂度为 O (1),是更高效的解法。

三、C++ 代码实现

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

Typora代码块痛点破解方案

探讨Typora中代码高亮渲染平台兼容等常见问题的解决思路 📋 目录 痛点概述常见问题分析解决方案最佳实践工具推荐 痛点概述 Typora作为一款优秀的Markdown编辑器,在代码块处理上存在一些常见痛点: 核心痛点 痛点类型具体表现影响范围&…

作者头像 李华
网站建设 2026/6/15 12:40:02

Wan2.2-T2V-A14B已接入某头部视频平台AI剪辑工具链

Wan2.2-T2V-A14B已接入某头部视频平台AI剪辑工具链 在广告创意需要日更、影视预演动辄耗资百万的今天,内容生产的效率瓶颈正被一场静默的技术革命悄然击穿。当一位运营人员只需输入“春日樱花下奔跑的小女孩”,8秒后一段720P高清视频便出现在剪辑时间线上…

作者头像 李华
网站建设 2026/6/15 13:53:09

Wan2.2-T2V-A14B能否生成企业年会创意短片?内部文化传播解决方案

Wan2.2-T2V-A14B能否生成企业年会创意短片?内部文化传播解决方案 在每年年底的企业年会筹备中,一支能点燃气氛、唤起共鸣的开场短片,往往比一场冗长的领导致辞更具传播力。但现实是:大多数企业的视频制作仍依赖外包团队&#xff0…

作者头像 李华
网站建设 2026/6/14 18:30:14

如何用企业微信AI助力导购提升客户营销与服务效率?3步配置+5个行业案例实战指南

每天有超7.5亿微信用户通过企业微信获取服务,但人工导购响应慢、不专业导致的客户流失率高。2025年可以通过企业微信,借助微盛AI企微管家的企业微信AI聊天agent助力企业解决客户服务效率低、转化难的问题。本文结合零售、金融、汽车等5大行业实战案例&am…

作者头像 李华
网站建设 2026/6/15 9:37:20

Wan2.2-T2V-A14B支持生成竖屏短视频吗?适配手机端浏览体验

Wan2.2-T2V-A14B 支持生成竖屏短视频吗?适配手机端浏览体验 在抖音、快手、小红书等平台主导的移动内容生态中,一个不争的事实是:用户的眼睛已经“竖着生长”了。横屏视频放在手机上播放,两边大片黑边像极了上世纪电视节目被硬塞进…

作者头像 李华