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

合并两个有序链表——递归解法

题目描述

21. 合并两个有序链表

难度简单2922收藏分享切换为英文接收动态反馈

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

示例 1:

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

输出:[1,1,2,3,4,4]

示例 2:

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

输出:[]

示例 3:

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

输出:[0]

提示:

  • 两个链表的节点数目范围是 [0, 50]

  • -100 <= Node.val <= 100

  • l1 和 l2 均按 非递减顺序 排列

刚接触这道题时 我根本就没想到要用递归 看了一下其他人的解法 感觉递归还不错 分享给你们

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*///我做为刚入门的新手 我来分享一下这道题的解题思路 (参考他人 如有不对望指教)
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2)
{//最终比较完之后肯定有一个为空if(list1 == NULL){return list2;//将非空的返回}if(list2 == NULL){return list1;}//如何调用 if(list1->val < list2->val){//小的节点 指向下一个 较小的节点   list1->next = mergeTwoLists(list1->next,list2);return list1;//不知道两个链表第一个节点谁小 如果list1小返回list1的地址}else{list2->next = mergeTwoLists(list2->next,list1);return list2;}
}

思路:首先确定两个链表中首个节点那个小 再调用该函数去判断该节点的下一个节点与另外一条链表的节点的大小关系 返回小的节点地址 (调用与返回 在一个层面只不过 不是同时进行 需要你了解一下递归的思路) 如此反复就将两个链表合并了

对于刚开始判断链表为空 应该放在最前面 不然链表为空 接下来的代码中可能会越界访问

题目来源于leetcode21题解

希望你能从中受益~

相关文章:

合并两个有序链表——递归解法

题目描述21. 合并两个有序链表难度简单2922收藏分享切换为英文接收动态反馈将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a;输入&#xff1a;l1 [1,2,4], l2 [1,3,4]输出&#xff1a;[1,1,2,3,4,4]示例…...

ADRC自抗扰控制总结

目录 前言 1.ADRC形式 1.1形一 1.2形二 2.被控对象 3.仿真分析 3.1仿真模型 3.2仿真结果 4.学习问题 前言 前面的3篇文章依次介绍了微分跟踪器TD、状态观测器ESO和非线性状态误差反馈NLSEF三部分内容&#xff0c;至此ADRC的结构已经介绍完毕&#xff0c;现在对分块学习…...

3年工作之后是不是还在“点点点”,3年感悟和你分享....

经常都有人问我软件测试前景怎么样&#xff0c;每年也都帮助很多朋友做职业分析和学习规划&#xff0c;也很欣慰能够通过自己的努力帮到一些人进入到大厂。 2023年软件测试行业的发展现状以及未来的前景趋势 最近很多测试人在找工作的时候&#xff0c;明显的会发现功能测试很…...

【自动化测试】web自动化测试验证码如何测?如何处理验证码问题?解决方案......

目录&#xff1a;导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09;前言 在对安全性有要求的…...

面试浅谈之 C++ STL 篇

面试浅谈之 C STL 篇 一 &#x1f3e0; 概述 HELLO&#xff0c;各位博友好&#xff0c;我是阿呆 &#x1f648;&#x1f648;&#x1f648; 这里是面试浅谈系列&#xff0c;收录在专栏面试中 &#x1f61c;&#x1f61c;&#x1f61c; 本系列将记录一些阿呆个人整理的面试题…...

【PTA Advanced】1144 The Missing Number(C++)

目录 题目 Input Specification: Output Specification: Sample Input: Sample Output: 思路 代码 题目 Given N integers, you are supposed to find the smallest positive integer that is NOT in the given list. Input Specification: Each input file contains…...

oracle的sqlnet.ora文件配置传输加密算法

sqlnet.ora文件位于ORACLE_HOME/network/admin目录中。sqlnet.ora文件中增加如下&#xff1a;SQLNET.ENCRYPTION_SERVER REQUIRED SQLNET.ENCRYPTION_TYPES_SERVER (RC4_256) SQLNET.CRYPTO_CHECKSUM_SERVER REQUIRED SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER MD5SQLNET.ENCRYP…...

RK3568存储性能测试

USBU盘储存性能参数(USB3.0接口)参数测试条件最小典型最大单位说明写速度写入1GB数据—32.6—MB/sU盘型号&#xff1a;KODAK&#xff0c;32GB USB3.0读速度读取1GB数据—66.7—MB/s 备注HW356X-CORE-4GB-32GBHW356X-GKA&#xff0c;操作系统&#xff1a;LinuxU盘储存性能参数(U…...

Homekit智能家居一智能灯泡

一、什么是智能灯 传统的灯泡是通过手动打开和关闭开关来工作。有时&#xff0c;它们可以通过声控、触控、红外等方式进行控制&#xff0c;或者带有调光开关&#xff0c;让用户调暗或调亮灯光。 智能灯泡内置有芯片和通信模块&#xff0c;可与手机、家庭智能助手、或其他智能…...

轻量级 Java 权限认证框架——Sa-Token

文章目录Sa-Token 介绍SpringBoot 集成 Sa-TokenSa-Token 功能登录认证会话查询Token 查询权限认证权限校验角色校验注解鉴权注册 Sa-Token 拦截器关闭注解校验路由拦截鉴权注册 Sa-Token 路由拦截器[记住我] 模式密码加密Sa-Token 集成 Redis方式1、使用 jdk 默认序列化方式方…...

算法复习(四、五、六)

动态规划 动态规划算法的有效性依赖于问题本身所具有的两个重要性质&#xff1a;最优子结构、重叠子问题 关于动态规划算法和备忘录方法的适用条件&#xff1a; 要求&#xff1a; 用分治法和动态规划法分别解决最大子段和问题&#xff08;第四步求最优解不需要掌握&#xff…...

SORT与DeepSORT简介

一、MOT( mutil-object tracking)步骤 在《DEEP LEARNING IN VIDEO MUTIL-OBJECT TEACKING: A SURVEY》这篇基于深度学习多目标跟踪综述中&#xff0c;描绘了MOT问题的四个主要步骤 1.跟定视频原始帧 2.使用目标检测器如Faster-rcnn, YOLO, SSD等进行检测&#xff0c;获取目标…...

TCP/IP网络编程——多播与广播

完整版文章请参考&#xff1a; TCP/IP网络编程完整版文章 文章目录第 14 章 多播与广播14.1 多播14.1.1 多播的数据传输方式以及流量方面的优点14.1.2 路由&#xff08;Routing&#xff09;和 TTL&#xff08;Time to Live,生存时间&#xff09;&#xff0c;以及加入组的办法14…...

K8S DNS解析过程和延迟问题

一、Linux DNS查询解析原理&#xff08;对于调用glibc库函数gethostbyname的程序&#xff09;我们在浏览器访问www.baidu.com这个域名&#xff0c;dns怎么查询到这台主机呢&#xff1f;  1、在浏览器中输入www.baidu.com域名&#xff0c;操作系统会先查找本地DNS解析器缓存&a…...

【JavaScript】js实现深拷贝的方法

前言 在js中我们想要实现深拷贝&#xff0c;首先要了解深浅拷贝的区别。 浅拷贝&#xff1a;只是拷贝数据的内存地址&#xff0c;而不是在内存中重新创建一个一模一样的对象&#xff08;数组&#xff09; 深拷贝&#xff1a;在内存中开辟一个新的存储空间&#xff0c;完完全全…...

RK3288 GPIO记录

1、引脚对应的GPIO 编号第一种 使用/sys/kernel/debug/gpio查询所有gpio引脚的基数第二种 cat /sys/class/gpio/gpiochip248/label对应的label就是GPIO引脚&#xff0c;例如下图GPIO8对应的基数就是2482、计算编号编号 基数 PIN脚如GPIO8的基数是248&#xff0c; GPIO8_A6的编…...

MongoDB介绍及使用教程

文章目录一、MongoDB介绍1. 什么是MongoDB2. 为什么要用MongoDB3. MongoDB的应用场景4. MongoDB基本概念二、MongoDB使用教程1.下载安装&#xff08;Windows&#xff09;2.MongoDB Conpass简单使用&#xff08;选学&#xff09;3.使用navicat连接MongoDB4.JAVA项目中使用MongoD…...

51单片机开发环境搭建 - VS Code 从编写到烧录

我安装并测试成功的环境&#xff1a; 操作系统&#xff1a;Windows 10 (22H2)单片机&#xff1a;STC89C52RCPython version: 3.7.6 在这之前&#xff0c;给51单片机写程序是用 Keil 5&#xff08;编写编译&#xff09;、STC-ISP&#xff08;烧录&#xff09;&#xff0c;由于…...

python datetime、字符串和时间戳之间的相互转换12小时制和24小时制时间相互转化

文章目录1.字符串转datetime格式2.datetime转字符串3.时间戳转datetime格式4.datetime格式转时间戳5.应用&#xff1a;将12小时制的字符串转换为时间戳1.字符串转datetime格式 把字符串转换为datetime的格式 项目字符串的样子‘%m/%d/%Y %H:%M:%S’2/3/2023 15:30:20‘%m-%d-…...

百度百科词条怎么做?百度百科词条创建攻略分享

只要是想要将自己宣传出去的企业或是个人&#xff0c;都建议创建属于自己的百度百科词条&#xff0c;因为百度百科词条流量大、权重高、排名靠前&#xff0c;创建百度百科词条可以提高企业或是个人的知名度和口碑。 百度百科词条怎么做&#xff1f;每天都有用户在百度上搜索这…...

WorkshopDL:跨平台工具实现Steam创意工坊资源获取的技术方案

WorkshopDL&#xff1a;跨平台工具实现Steam创意工坊资源获取的技术方案 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 在多平台游戏生态中&#xff0c;玩家常面临创意内容获取…...

OpenScreen——Screen Studio平替开源屏幕录制神器

你是否也曾为制作一个简单的产品演示视频而焦头烂额&#xff1f;花大价钱买的录屏软件&#xff0c;结果导出的视频角落里永远有个去不掉的水印&#xff1f;今天给大家安利一款刚在 GitHub 爆火的开源神器&#xff0c;彻底解决你的录屏烦恼。一、那些年&#xff0c;我们踩过的录…...

开源麻将AI分析工具:3步颠覆传统牌局决策模式

开源麻将AI分析工具&#xff1a;3步颠覆传统牌局决策模式 【免费下载链接】Akagi 支持雀魂、天鳳、麻雀一番街、天月麻將&#xff0c;能夠使用自定義的AI模型實時分析對局並給出建議&#xff0c;內建Mortal AI作為示例。 Supports Majsoul, Tenhou, Riichi City, Amatsuki, wit…...

WechatBakTool终极指南:如何安全备份与恢复微信聊天记录

WechatBakTool终极指南&#xff1a;如何安全备份与恢复微信聊天记录 【免费下载链接】WechatBakTool 基于C#的微信PC版聊天记录备份工具&#xff0c;提供图形界面&#xff0c;解密微信数据库并导出聊天记录。 项目地址: https://gitcode.com/gh_mirrors/we/WechatBakTool …...

SDMatte GPU算力实测报告:A10/A100显存占用与吞吐量对比

SDMatte GPU算力实测报告&#xff1a;A10/A100显存占用与吞吐量对比 1. 测试背景与目的 SDMatte作为一款专业级AI抠图工具&#xff0c;在处理复杂边缘和透明物体时表现出色。但在实际业务场景中&#xff0c;GPU资源的选择直接影响处理效率和成本。本次测试旨在对比NVIDIA A10…...

Cosmos-Reason1-7B实际作品:实验室化学反应装置稳定性与泄漏风险评估

Cosmos-Reason1-7B实际作品&#xff1a;实验室化学反应装置稳定性与泄漏风险评估 1. 项目概述 Cosmos-Reason1-7B是NVIDIA开发的多模态物理推理视觉语言模型&#xff0c;专注于物理场景理解和安全风险评估。该模型能够分析图像和视频内容&#xff0c;结合物理常识进行链式思维…...

lite-avatar形象库惊艳效果展示:高保真表情+精准唇动同步的对话级数字人呈现

lite-avatar形象库惊艳效果展示&#xff1a;高保真表情精准唇动同步的对话级数字人呈现 桦漫AIGC集成开发 | 微信: henryhan1117 1. 引言&#xff1a;数字人交互的新标杆 想象一下&#xff0c;一个数字人不仅能和你流畅对话&#xff0c;还能做出逼真的表情变化&#xff0c;嘴唇…...

潮玩盲盒小程序开发踩坑?这些解法要记住

潮玩盲盒小程序开发踩坑&#xff1f;这些解法要记住✅ 哈喽&#xff5e;做潮玩盲盒小程序开发&#xff0c;很多伙伴都会踩坑&#xff01;今天整理了高频开发痛点对应应对方法&#xff0c;新手也能避坑&#x1f447; &#x1f3ae; 开发痛点应对方案&#xff08;一痛一解&#x…...

LFM2.5-1.2B-Thinking-GGUF在软件测试中的应用:自动化生成测试用例与代码审查

LFM2.5-1.2B-Thinking-GGUF在软件测试中的应用&#xff1a;自动化生成测试用例与代码审查 1. 引言&#xff1a;当AI遇上软件测试 "测试工程师80%的时间都在写重复的测试用例"——这个行业痛点正在被AI改变。想象一下&#xff0c;当你拿到一份需求文档&#xff0c;A…...

Asian Beauty Z-Image Turbo 学术研究工具链:从MATLAB数据分析到AI图像生成

Asian Beauty Z-Image Turbo 学术研究工具链&#xff1a;从MATLAB数据分析到AI图像生成 1. 引言 如果你做过科研&#xff0c;或者写过技术论文&#xff0c;一定有过这样的经历&#xff1a;辛辛苦苦用MATLAB跑完仿真、画好数据图&#xff0c;到了要写论文插图说明或者画一个漂…...