【LeetCode刷题记录】21. 合并两个有序链表

21 合并两个有序链表

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

示例 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 均按 非递减顺序 排列

思路

使用双指针思想。分别遍历两个链表。新建一个链表,并用一个指针p记录插入位置,每次比较两个链表中小的那个插入到新链表中,剩余的直接插入到新链表尾部。

代码

/**
 * 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) {
        ListNode* head = new ListNode;
        ListNode* p = head;
        while (list1 != nullptr && list2 != nullptr) {
            if (list1->val <= list2->val) {
                p->next = list1;
                list1 = list1->next;
            } else {
                p->next = list2;
                list2 = list2->next;
            }
            p = p->next;
        }
        p->next = list1 != nullptr ? list1 : list2;
        return head->next;
    }
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/566573.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AI大模型探索之路-资料篇:大模型开发相关地址信息收藏

文章目录 前言一、OpenAI大模型二、LangChain开发框架三、RAGA评估框架四、GLM大模型五、搜索服务1. Tavily Search API 六、文本LLM大模型七、多模态LLM模型八、模型排行榜1.大模型评测体系&#xff08;司南OpenCompass&#xff09;2.大模型排行榜&#xff08;DataLearner AI&…

校园能源消耗监测管理系统,为您提供节能减排方案

现如今 &#xff0c;在全球加快推动能源转型、减少碳排的背景下&#xff0c;节能减排已成为各行各业的共同诉求。作为最具示范效应的教育机构&#xff0c;学校在节能减排领域引领着重要的作用。 学效能源消耗监测管理系统是一套涵盖、教学楼、办公楼、图书馆、学生公寓、体育场…

SpringBoot+layuimini实现左侧菜单动态展示

layuimini左侧菜单动态显示 首先我们看一下layuimini的原有菜单显示格式 {"homeInfo": {"title": "首页","href": "page/welcome-2.html?t2"},"logoInfo": {"title": "LAYUI MINI","…

如何加盟共享wifi项目?了解套路有哪些?

自共享wifi项目推出在市场火爆后&#xff0c;各路资本都看到了该项目的广阔前景&#xff0c;纷纷开始研发程序&#xff0c;想要趁机分一杯羹。但对于普通人而言&#xff0c;独立研发程序显然不大现实&#xff0c;于是&#xff0c;共享wifi项目如何加盟便成为了绝大多数人最为关…

安卓手机如何改ip地址?探索方法与注意事项

在数字时代&#xff0c;IP地址成为了我们在线身份的重要标识。对于安卓手机用户而言&#xff0c;了解如何修改IP地址可能涉及多种场景&#xff0c;那么&#xff0c;如何安全、有效地进行这一操作呢&#xff1f;下面将为您提供相关方法&#xff0c;并探讨修改IP地址时的注意事项…

一句话或一张图讲清楚系列之——IDELAYE2的用法

主要参考&#xff1a; Xilinx IDELAYE2应用笔记及仿真实操-CSDN博客 xilinx原语介绍及仿真——IDELAYE2 & IDELAYCTRL_idelayctrl原语使用说明-CSDN博客 1 原理 IDELAYE2一般用于对输入lvds高速信号进行延时微调&#xff0c;可以把时钟和数据都单独微调&#xff1b;如果数…

OmniFocus Pro 4.2.1正式激活版 最好用的GTD效率工具

OmniFocus 是一款功能强大的任务管理软件&#xff0c;适合忙碌的专业人士。借助有助于平息混乱的工具&#xff0c;您可以在正确的时间专注于正确的任务。 OmniFocus Pro 4.2.1正式激活版下载 随时随地轻松创建任务&#xff0c;并通过项目、标签和日期进行整理。在任何设备上&am…

Python 基于docker部署的Mysql备份查询脚本

前言 此环境是基于docker部署的mysql&#xff0c;docker部署mysql可以参考如下链接&#xff1a; docker 部署服务案例-CSDN博客 颜色块文件 rootbogon:~ 2024-04-18 16:34:23# cat DefaultColor.py ######################################################################…

面试宝典(1)——数据库篇(MySQL)

面试宝典&#xff08;1&#xff09;——数据库篇&#xff08;MySQL&#xff09; 1.什么是索引&#xff1f; 索引是一种用于加快数据库查询速度的数据结构。 索引可以帮助数据库快速定位到数据库表中特定列的记录&#xff0c;从而加快数据检索和查询的速度。 通过在表的列上…

【数据结构(邓俊辉)学习笔记】绪论03——递归分析

文章目录 意图目标1. 线性递归数组求和线性递归减而治之 2. 递归分析递归跟踪递推方程典型递推方程 3. 递归模式多递归基多向递归 4. 递归消除空间成本尾递归及其消除 5. 二分递归分而治之数组求和 6 . 效率7. 算法设计优化总结前n项计算算法 意图 数据结构中经常用到递归&…

谷歌广告B2C实战特训营,500+谷歌账户经验,实战演示从0-1搭建广告账户

结合数据优化搜索、购物(PMax)、再营销、展示、视频广告类型&#xff0c;提升ROI稳定增长 课程背景&#xff1a; 不同的电商产品(如大件家具、假发、服饰等)适合的广告类型、组合策略、预算配置大不相同。 为了让大家最快掌握不同产品的投放策略找到最适合自己的打法&#x…

【前端】vue3树形组件使用

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、树形组件简介二、树形组件使用三、总结 前言 随着开发语言及人工智能工具的普及&#xff0c;使得越来越多的人学习使用vue前端工具&#xff0c;本文主要是…

sql server 恢复数据库、单表数据的方法

1、查看备份文件在哪个路径、一般文件夹名都是叫&#xff1a;Backup 2、下面开始还原&#xff08;恢复&#xff09;数据库&#xff0c;对着【数据库】右键--【新建数据库】--然后随便命名&#xff0c;如下图 3、你要是想改路径的话就拉过来&#xff0c;2行都要改、不想多事就直…

解决zabbix中文乱码问题

目录 1、遇到的问题 2、解决方法 第一步&#xff1a;在windows电脑上可以搜索simkai.ttf文件&#xff0c;上传到 /usr/share/zabbix/assets/fonts文件夹 第二步&#xff1a;删除软链接 第三步&#xff1a;创建软链接 第四步:重启服务 3、检查问题是否被解决 1、遇到的问…

【华为 ICT HCIA eNSP 习题汇总】——题目集18

1、SSH默认工作使用的TCP端口号是&#xff08;&#xff09;。 A、20 B、21 C、22 D、23 考点&#xff1a;①传输层 ②应用层 解析&#xff1a;&#xff08;C&#xff09; SSH为建立在应用层和传输层上的安全协议&#xff0c;是对TCP/IP协议的传输层以上的SSH会话流程进行加密的…

opencv_5_图像像素的算术操作

方法1&#xff1a;调用库函数 void ColorInvert::mat_operator(Mat& image) { Mat dst; Mat m Mat::zeros(image.size(), image.type()); m Scalar(2, 2, 2); multiply(image, m, dst); m1 Scalar(50,50, 50); //divide(image, m, dst); //add(im…

IPRally巧用Google Kubernetes Engine和Ray改善AI

专利检索平台提供商 IPRally 正在快速发展&#xff0c;为全球企业、知识产权律师事务所以及多个国家专利和商标局提供服务。随着公司的发展&#xff0c;其技术需求也在不断增长。它继续训练模型以提高准确性&#xff0c;每周添加 200,000 条可供客户访问的可搜索记录&#xff0…

Linux 创建磁盘分区以及挂载磁盘-详解(图文)

命令 查看磁盘使用情况命令&#xff1a; # 查看系统分区 fdisk -l # 查看硬盘分区 fdisk 路径 查看所有可用的块设备信息&#xff0c;并显示他们之间的依赖关系。 lsblk 我这里是已经挂载好了 确定分区文件系统类型 blkid 目录路径 使用fdisk 创建分区 [rootlocalhost…

html--奔腾的骏马

<!DOCTYPE html> <html lang"en" > <head> <meta charset"UTF-8"> <title>奔腾的骏马</title><link rel"stylesheet" href"css/style.css"></head> <body><input type"…

WSL2使用Xserver启动GUI程序时出现cursor theme错误

普通用户运行程序时错误截图&#xff1a; sudo运行程序就不会发生这个错误。。。 修改方法&#xff1a;sudo apt-get install adwaita-icon-theme-full 然后使用普通用户执行程序就没有问题了。