题目链接:21. 合并两个有序链表 - 力扣(LeetCode)

题目描述

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

示例 1:

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

示例 2:

输入:l1 = [], l2 = []
输出:[]

示例 3:

输入:l1 = [], l2 = [0]
输出:[0]

题目作答

  1. 双指针遍历:使用两个指针分别遍历两个链表,比较当前节点值的大小,选择较小值的节点加入新链表。

  2. 递归或迭代

    • 递归:通过递归调用合并剩余部分,代码简洁但可能导致栈溢出。

    • 迭代:使用迭代模拟递归过程,通过虚拟头节点简化边界处理。

  3. 边界处理:若任一链表为空,直接返回另一链表;合并完成后,将剩余链表直接连接到结果末尾。

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode() : val(0), next(nullptr) {}*     ListNode(int x) : val(x), next(nullptr) {}*     ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:ListNode* mergeTwoLists(ListNode* list1, ListNode* list2) {// 边界条件:若任一链表为空,返回另一链表if (!list1) return list2;if (!list2) return list1;// 递归合并if (list1->val <= list2->val) {list1->next = mergeTwoLists(list1->next, list2);return list1;} else {list2->next = mergeTwoLists(list1, list2->next);return list2;}}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/916106.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/916106.shtml
英文地址,请注明出处:http://en.pswp.cn/news/916106.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于单片机的楼宇门禁系统的设计与实现

2、系统总体设计 2.1硬件的总体设计 为了使门禁系统智能化&#xff0c;需要一个主控芯片对整个门禁系统进行管理控制。接着还需要对应的模块完成包括数字密码验证和IC卡识别验证的功能。当出现非法闯入、验证失败等情况时还需要对操作人员进行警告。最后需要一个人机交互界面方…

全天候自动化数字型智能驱鸟装置,电网防鸟高科技

鸟类在输电线路铁塔、电线杆上筑巢、栖息和排泄是个大问题&#xff0c;很容易引发线路故障导致停电。为了保障电网安全稳定运行&#xff0c;会用到各种智能驱鸟装置来驱赶鸟类&#xff0c;避免涉鸟故障发生。例如全天候自动化数字型智能驱鸟装置&#xff0c;其厉害的地方在于它…

技术、生态与商业:从PC到移动的平台之争

在科技发展的漫长历史中&#xff0c;我们常常惊叹于那些改变世界的伟大技术。然而&#xff0c;深入探究会发现&#xff0c;单纯的技术领先并不能保证最终的胜利。从 PC 操作系统到移动终端&#xff0c;乃至服务器软件&#xff0c;那些最终笑傲江湖的巨头们都遵循着一个共同的法…

android JXL 导出Excel(.xls/xlsx)

前面使用过 POI 导出xlsx但是它体量比较大&#xff0c;功能较丰富&#xff0c;在一些对包size比较敏感并且导出需求相对简单的项目中就不太适合。 poi链接&#xff1a;Android 导入导出excel xls、xlsx_android excel导入导出-CSDN博客 jxl 包体积小&#xff0c;使用简单、AP…

mysql 的主从机制是怎么实现的?

MySQL 作为当前最流行的开源关系型数据库之一&#xff0c;为了满足数据的高可用、负载均衡和容灾备份等需求&#xff0c;广泛应用主从复制&#xff08;Replication&#xff09;机制。其核心思想是&#xff1a;在一台主库&#xff08;Master&#xff09;上发生的所有数据变更都会…

【PHP 函数从入门到精通】

&#x1f9e0; PHP 函数从入门到精通 PHP 函数是编程中最基础、也是最强大的工具之一。它不仅可以简化代码、提高复用性&#xff0c;还能通过各种高级用法&#xff0c;让你写出更灵活、更现代的代码。 下面我们从函数的基础讲起&#xff0c;逐步深入&#xff0c;带你掌握函数的…

CGA老年综合评估汉密尔顿抑郁量表与认知评估联用

一、CGA老年综合评估汉密尔顿抑郁量表与认知评估联用的基础CGA老年综合评估 &#xff08;一&#xff09;二者评估内容的互补性 CGA老年综合评估汉密尔顿抑郁量表主要聚焦于老年人的抑郁情绪及相关症状&#xff0c;而认知评估则着重考察老年人的记忆力、注意力、思维能力等认知…

教培机构如何开发自己的证件照拍照采集小程序

职业教培机构对学员的证件照采集是进行学生培训管理、考试报名、证书发放的前置工作&#xff0c;传统拍照和收集证件照的方式往往面临效率低、质量参差不齐等问题。开发一款专属的证件照拍照采集小程序&#xff0c;不仅能提升机构形象&#xff0c;还能大幅优化工作流程。借助“…

GC8872刷式直流电机驱动器详解:3.6A驱动能力与PWM控制

概述GC8872是一款具有故障报告功能的刷式直流电机驱动芯片&#xff0c;专为打印机、电器、工业设备等机电一体化应用设计。这款芯片采用ESOP8封装&#xff0c;集成了H桥驱动电路和多种保护功能&#xff0c;支持高达3.6A的峰值电流输出。关键特性宽电压工作范围&#xff1a;6.5V…

从0开始学习R语言--Day54--双重固定模型

对于具有空间差异的数据&#xff0c;如果不知道数据的特征关系或意义&#xff0c;直接用杜宾模型来处理是一个比较通用的思路&#xff0c;只是后续还需要很多检验去证明结果的可解释性和统计性。但如果我们已经知道特征的意义&#xff0c;比如企业经济发展的数据中有着员工的科…

三生筛法在计算数论中的极限是什么?

AI辅助创作&#xff1a;三生筛法在计算数论中的极限主要体现在‌规模边界‌、‌算法适应性‌及‌理论兼容性‌三个维度&#xff0c;其核心瓶颈与突破路径如下&#xff1a;一、规模边界&#xff1a;计算效率的断崖式衰减‌‌低维高效区的上限‌在 10^15 以内数域&#xff0c;三生…

iOS WebView 加载失败与缓存刷新问题排查实战指南

在移动 App 中嵌入网页后&#xff0c;不少团队都会遇到一个诡异的问题&#xff1a;用户看到的是“旧内容”&#xff0c;或“资源加载失败”&#xff0c;但在浏览器调试中一切正常。特别是在 iOS WebView 中&#xff0c;这类缓存和加载问题常常隐匿、难以复现。 这篇文章将通过一…

GoLand 项目从 0 到 1:第二天 —— 数据库自动化

第二天核心任务&#xff1a;自动化与多数据库支持第二天的开发聚焦于数据库自动化流程构建与MongoDB 业务链路扩展&#xff0c;通过工具化手段解决数据库操作的重复性问题&#xff0c;同时完善多数据库支持能力。经过一天的开发&#xff0c;项目已实现数据库初始化、迁移、种子…

qt框架,使用webEngine如何调试前端

解决 Qt 5.14.2 中启用开发者工具的问题问题在于 Qt 5.14.2 中 QWebEngineSettings::DeveloperExtrasEnabled 属性已被弃用或更改。正确启用开发者工具的完整方法&#xff08;Qt 5.14.2&#xff09;1. 修改 main.cpp#include <QWebEngineView> #include <QWebEngineSe…

【Atlassian生态】Jira Cloud单站点现可支持10万用户:架构升级与龙智云迁移服务

作为Atlassian全球白金合作伙伴&#xff0c;龙智团队非常激动地宣布&#xff1a;Jira迎来历史性突破——Jira Cloud单个站点最高可支持10万用户&#xff01;覆盖Enterprise、Premium和Standard版本。现在&#xff0c;更多的团队可以将Jira作为核心协作中枢&#xff0c;以加速目…

深入解析JVM垃圾回收调优:性能优化实践指南

深入解析JVM垃圾回收调优&#xff1a;性能优化实践指南 一、技术背景与应用场景 随着互联网业务的飞速发展&#xff0c;Java 应用在高并发、大内存场景下对 JVM 性能提出了更高要求。垃圾回收&#xff08;Garbage Collection&#xff0c;GC&#xff09;作为 JVM 的核心组件之一…

万字解析Redission ---深入理解Redission上锁过程

Redisson获取锁过程 RLock lock redissonClient.getLock("lock:order" userId); boolean isLock lock.tryLock(1L, TimeUnit.SECONDS);调用tyrLock其实就是下面的方法&#xff0c;如果说没有指定锁的过期时间&#xff0c;可以看到这边设置为了-1Overridepublic bo…

NVM踩坑实录:配置了npm的阿里云cdn之后,下载nodejs老版本(如:12.18.4)时,报404异常,下载失败的问题解决

文章目录一、情景还原二、分析原因三、解决方案一、情景还原 有个老项目&#xff0c;需要用到 node 的 12.18.4 版本。 小case&#xff0c;我装了 nvm 的&#xff0c;根本构不成挑战&#xff0c;敲敲命令就可以了&#xff1a; # 安装12.18.4版本的nodejs nvm install 12.18.…

优秀案例:基于python django的智能家居销售数据采集和分析系统设计与实现,使用混合推荐算法和LSTM算法情感分析

1 绪论1.1 研究的背景和意义本文所研究设计的智能家居销售数据采集与分析系统主要是为了提升数据的采集效率&#xff0c;并且实现及时采集到的线上电商平台及线下店面的多重渠道销售数据的采集与分析&#xff0c;精确地进行相关的数据采集并应用先进的数据挖掘算法进行分析挖掘…

【传感器标定(四):多传感器融合定位系统中的标定与时间同步方案】

1. 系统框架概述 本方案采用"三层标定框架"&#xff0c;整体架构如下图所示&#xff1a; #mermaid-svg-WhuG9fzKdHSAzSNh {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-WhuG9fzKdHSAzSNh .error-icon{f…