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

合并两个有序链表,剑指offer,力扣

目录

力扣题目地址:

原题题目:

我们直接看题解吧:

解题方法:

审题目+事例+提示:

解题思路:

具体流程如下:

代码实现:

知识补充:


力扣题目地址:

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

难度:简单

今天刷合并两个有序链表,大家有兴趣可以点上看看题目要求,试着做一下

原题题目:

输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。

我们直接看题解吧:

解题方法:

方法1、递归

方法2、迭代

审题目+事例+提示:

  • 两个链表的节点数目范围是 [0, 50]
  • l1 和 l2 均按 非递减顺序 排列

解题思路:

设L1,L2两个递增链表,合并成一个新的递增链表L3,

循环遍历依次比较两个链表的每一个节点,

若L1>L2,则L3的next指向L1,L1、L3下移一位,L1与L2继续比较,L2同理。

最后遍历结束,其中一个链表会剩下些节点,则直接加到L3即可

具体流程如下:

代码实现:

class Solution {public ListNode mergeTwoLists(ListNode list1, ListNode list2) {//虚节点的值为 0,它的值可以设置为任何的数,因为我们根本不需要使用它的值ListNode dum = new ListNode(0), cur = dum;//创建一个虚头结点,同时cur指向dumwhile (list1 != null && list2 != null) {  //while循环结束条件为其中一个链表指向为空if (list1.val < list2.val) {       //当L1<L2,cur.next指向L1cur.next = list1;list1 = list1.next;             //L1下移动一位} else {cur.next = list2;list2 = list2.next;} cur = cur.next;                   //cur下移动一位,比较其中一个链表下一位与另一列 //链表的当前位}//循环结束,判断L1是否指向为空,L1非空则cur.next指向L1,L2反之cur.next = list1 != null ? list1 : list2;return dum.next;}
}
知识补充:

为什么要让cur=dum

链表头节点dum不能乱动,所以用cur暂代dum,让cur动,直接操作dum的话,最后返回就得重找头结点了

类似于浅拷贝后的对象和原对象的修改会相互影响,这本质是因为它们用的同一片内存,相当于一个房间配两把钥匙。但如果不是修改,而是直接赋值,它们是不会相互影响的,相当于换成了新房子的钥匙。 

相关文章:

合并两个有序链表,剑指offer,力扣

目录 力扣题目地址&#xff1a; 原题题目&#xff1a; 我们直接看题解吧&#xff1a; 解题方法&#xff1a; 审题目事例提示&#xff1a; 解题思路&#xff1a; 具体流程如下&#xff1a; 代码实现&#xff1a; 知识补充&#xff1a; 力扣题目地址&#xff1a; 21. 合并两个有序…...

Delphi 12 Athens 发布了!

官方安装包 ☞ https://altd.embarcadero.com/download/radstudio/12.0/RADStudio_12_0_4915718.iso 安装辅助工具、控件可以戳这里 &#xff1a;Delphi 12 资源 RAD Stuido 12 Athens &#xff0c;这次更新的细节还是比较多的&#xff0c;但主要还是多端&#xff08;iOS、An…...

基于Haclon的Blob分析

任务要求&#xff1a; 请用BLOB分析的方法计算图中所有灰度值在120和255之间的像素构成的8连通区域的面积与中心点坐标。 Blob基础&#xff1a; 分析过程&#xff1a;首先获取图像&#xff0c;然后根据特征对原始图像进行阈值分割&#xff08;区分背景像素和前景像素&#xf…...

安卓手机好用的清单软件有哪些?

生活中每个人都有丢三落四的习惯&#xff0c;伴随着生活节奏的加快&#xff0c;人们常忘事的情况会更加频繁的出现&#xff0c;这时候很多人就开始选择手机上记录清单类的软件&#xff0c;安卓手机在手机市场中占有很大的分量&#xff0c;在安卓手机上好用的记录清单的软件有哪…...

【追求卓越02】数据结构--链表

引导 今天我们进入链表的学习&#xff0c;我相信大家对链表都很熟悉。链表和数组一样&#xff0c;作为最基础的数据结构。在我们的工作中常常会使用到。但是我们真的了解到数组和链表的区别吗&#xff1f;什么时候使用数组&#xff0c;什么时候使用链表&#xff0c;能够正确的选…...

qt按照不同编码格式读取文字(UTF-16LE,UTF-8,UTF-8BOM,UTF-16BE)

enum class EncodingFormat : int {ANSI 0,//GBKUTF16LE,UTF16BE,UTF8,UTF8BOM, }; EncodingFormat VideoPlayer::FileCharacterEncoding(const QString &fileName) {//假定默认编码utf8EncodingFormat code EncodingFormat::UTF8;QFile file(fileName);if (file.open(QI…...

R语言和RStudio的下载安装(非常简便舒适)

目录 R语言和RStudio的关系R语言和Tableau下载R语言进入官网选择清华镜像源Download R for Windows选择base版本开始下载进行安装配置环境变量检查是否安装成功 下载RStudio进入官网点击下载进行安装检查是否安装成功打开选择R语言环境成功打开显示四个工作区 R语言和RStudio的…...

SQL注入漏洞发现和利用,以及SQL注入的防护

一、背景 SQL注入漏洞是一种常见的软件安全问题&#xff0c;它发生在应用程序的数据库层中。其核心原理是将用户输入的数据当做代码来执行&#xff0c;违反了“数据与代码分离”的原则。具体来说&#xff0c;攻击者通过构造恶意的SQL查询语句&#xff0c;使得应用程序在执行SQ…...

Jmeter 分布式压测

为什么要分布式 jmeter是100%纯java开发的程序&#xff0c;虚拟用户是以线程实现的&#xff0c;在大量并发情况下&#xff0c;很容易出现CPU、内存消耗过大的问题&#xff0c;甚至会出现java内存溢出。一般一台电脑设置500-600线程数即可&#xff0c;如果超过1000线程&#xf…...

Docker 安装 Apache

目录 拉取官方 Apache 镜像 查看本地镜像 列出正在运行的容器 运行 Apache 容器 创建一个 HTML 文件&#xff1a;index.html 访问 Apache 拉取官方 Apache 镜像 查找 Docker Hub 上的 httpd 镜像。 可以通过 Tags 查看其他版本的 httpd&#xff0c;默认是最新版本 httpd…...

python变量、常量、数据类型

一、变量 变量是存储在内存中的值&#xff0c;这就意味着在创建变量时会在内存中开辟一个空间。 基于变量的数据类型&#xff0c;解释器会分配指定内存&#xff0c;并决定什么数据可以被存储在内存中。 因此&#xff0c;变量可以指定不同的数据类型&#xff0c;这些变量可以…...

注册中心CAP架构剖析

Nacos 支持 AP 或 CP AP Nacos 通过临时节点实现 AP 架构&#xff0c;将服务列表放在内存中&#xff1b; CP Nacos 通过持久化节点实现 CP 架构&#xff0c;将服务列表放在文件中&#xff0c;并同步到内存&#xff0c;通过 Raft 协议算法实现&#xff1b; 通过配置 epheme…...

SVN创建分支

一 从本地创建方式可指定版本号进行分支创建。 1、在本地目录右击 -----> 点击branch/tag(分支/标签) From: 源&#xff0c;可指定具体的版本号&#xff0c; To path: 可通过"..."选择分支路径 最后点击确定&#xff0c;交由服务器执行创建。 二 通过SVN客…...

Vue 设置v-html中元素样式

使用方式&#xff1a; <<< img { max-width: 100% } 如&#xff1a;要将v-html中的图片元素(img)的最大宽度设置为100%. <template><div ><div class"rtfDiv book" v-html"content"></div></div> </template&…...

连接服务器的脚本

对于记不住的服务器密码且不愿用三方工具俺简单写了个脚本&#xff08;检测下最近shell脚本的学习效果咋样&#xff09; expect 是处理交互的一种脚本语言&#xff0c;spawn启动指定进程 -> expect获取指定关键字 -> send想指定进程发送指定指令 -> 执行完成后退出 sp…...

ChatGPT/GPT4丨编程助手;AI画图;数据分析;科研/项目实现;提示词工程技巧;论文写作等

ChatGPT 在论文写作与编程方面也具备强大的能力。无论是进行代码生成、错误调试还是解决编程难题&#xff0c;ChatGPT都能为您提供实用且高质量的建议和指导&#xff0c;提高编程效率和准确性。此外&#xff0c;ChatGPT是一位出色的合作伙伴&#xff0c;可以为您提供论文写作的…...

35的程序员被辞了可以自己接外包啊?为什么都那么悲观呢?

35的年纪&#xff0c;上有老下有小&#xff0c;即将步入中年危机&#xff0c;在这个节骨眼上被辞&#xff0c;能不悲观吗&#xff1f; 在这个年纪人们往往追求的是稳定的工作和生活&#xff0c;而进入一个自己不熟悉的行业并不是一个好的选择。 况且&#xff0c;你认为的外包…...

2020年09月 Scratch(三级)真题解析#中国电子学会#全国青少年软件编程等级考试

Scratch等级考试(1~4级)全部真题・点这里 一、单选题(共25题,每题2分,共50分) 第1题 执行下面程序,屏幕上最多会看到多少个苹果? A:10个 B:11个 C:1个 D:无法确定 答案:B 第2题 关于下面程序,说法正确的是 ? A:执行 后,马上执行...

SpringBoot面试之SpringBoot自动装配原理

SpringBoot自动装配原理 背景 最近因为各种原因&#xff0c;我又重新加入到了找工作的大军当中。昨天在面试的时候与面试官聊到我们项目都是基于SpringBoot开发的&#xff0c;然后面试官就顺口问了句&#xff1a;”SpringBoot项目会引入许多的starter&#xff0c;比如&#x…...

JavaScript:监听事件

该方法用于向浏览器窗口注册事件监听器&#xff0c;当指定的事件&#xff08;如单击、按键按下&#xff09;被触发时&#xff0c;浏览器会自动调用指定的函数&#xff08;回调函数&#xff09;。 window.addEventListener(event, function, useCapture); 参数说明&#xff1a…...

如何在Windows电脑上轻松安装安卓APK文件:3分钟掌握终极解决方案

如何在Windows电脑上轻松安装安卓APK文件&#xff1a;3分钟掌握终极解决方案 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾经想在Windows电脑上直接运行安卓…...

PHP 8.9 Fiber vs Swoole vs RoadRunner:横向压测对比报告(含CPU/内存/错误率/启动耗时6维数据)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;PHP 8.9 Fiber高并发架构演进与核心价值 PHP 8.9 并非官方已发布版本&#xff08;截至 2024 年&#xff0c;PHP 最新稳定版为 8.3&#xff09;&#xff0c;但作为技术前瞻性的概念演进&#xff0c;&quo…...

从NeRF论文到代码实战:手把手教你复现ECCV2020经典3D重建(附避坑指南)

从NeRF论文到代码实战&#xff1a;手把手教你复现ECCV2020经典3D重建&#xff08;附避坑指南&#xff09; 在计算机视觉领域&#xff0c;神经辐射场&#xff08;Neural Radiance Fields, NeRF&#xff09;无疑是近年来最具突破性的技术之一。这项由ECCV2020会议发表的研究&…...

ohook安全分析:为什么它比传统KMS激活更安全可靠

ohook安全分析&#xff1a;为什么它比传统KMS激活更安全可靠 【免费下载链接】ohook An universal Office "activation" hook with main focus of enabling full functionality of subscription editions 项目地址: https://gitcode.com/gh_mirrors/oh/ohook …...

Winhance中文版:你的Windows系统优化终极指南 [特殊字符]

Winhance中文版&#xff1a;你的Windows系统优化终极指南 &#x1f680; 【免费下载链接】Winhance-zh_CN A Chinese version of Winhance. C# application designed to optimize and customize your Windows experience. 项目地址: https://gitcode.com/gh_mirrors/wi/Winha…...

[特殊字符]【AI Infra 核心】深度学习引擎底层的秘密:用现代 C++ 徒手实现高性能显存池

&#x1f680;【AI Infra 核心】深度学习引擎底层的秘密&#xff1a;用现代 C 徒手实现高性能显存池摘要&#xff1a;平时写 PyTorch&#xff0c;大家习惯了大手一挥 tensor.to(cuda)&#xff0c;仿佛显存是无限且无代价的。但当你真正深入 AI 框架底层&#xff08;如 PyTorch …...

告别网卡瓶颈:用Xilinx KU060 FPGA和10G/25G Ethernet Subsystem打造你的专属高速UDP网卡(附4套源码)

突破传统网卡极限&#xff1a;基于Xilinx KU060的10G/25G以太网子系统实战指南 在数据中心和云计算领域&#xff0c;网络带宽需求正以惊人的速度增长。传统PCIe网卡虽然性能稳定&#xff0c;但在灵活性、可定制性和成本效益方面存在明显局限。本文将带您探索如何利用Xilinx KU0…...

抖音无水印下载器完整指南:3分钟掌握免费批量下载技巧

抖音无水印下载器完整指南&#xff1a;3分钟掌握免费批量下载技巧 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback suppo…...

C2C模型在代码生成中的令牌化与层对齐优化实践

1. 项目概述 在自然语言处理领域&#xff0c;C2C&#xff08;Code-to-Code&#xff09;模型作为一种特殊的序列到序列架构&#xff0c;正在代码生成、代码补全和程序翻译等场景中展现出独特优势。不同于传统NLP任务&#xff0c;C2C模型需要处理高度结构化的编程语言语法&#x…...

保姆级教程:在野火STM32F429上用HAL库搞定LVGL 8.2移植(附触摸屏适配避坑)

野火STM32F429开发板LVGL 8.2移植实战指南 拿到野火STM32F429挑战者开发板和5寸电容屏&#xff0c;想快速搭建LVGUI开发环境却卡在HAL库配置、文件结构组织、触摸驱动适配等问题上&#xff1f;这篇保姆级教程将带你一步步完成LVGL 8.2在STM32F429平台上的完整移植&#xff0c;特…...