LeetCode21. Merge Two Sorted Lists

2023-12-19

一、题目

You are given the heads of two sorted linked lists list1 and list2.

Merge the two lists into one sorted list. The list should be made by splicing together the nodes of the first two lists.

Return the head of the merged linked list.

Example 1:

Input: list1 = [1,2,4], list2 = [1,3,4]
Output: [1,1,2,3,4,4]
Example 2:

Input: list1 = [], list2 = []
Output: []
Example 3:

Input: list1 = [], list2 = [0]
Output: [0]

Constraints:

The number of nodes in both lists is in the range [0, 50].
-100 <= Node.val <= 100
Both list1 and list2 are sorted in non-decreasing order.

二、题解

/**
 * 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 == nullptr) return list2;
        if(list2 == nullptr) return list1;
        ListNode* head = list1->val < list2->val ? list1 : list2;
        ListNode* cur1 = head->next;
        ListNode* cur2 = head == list1 ? list2:list1;
        ListNode* pre = head;
        while(cur1 && cur2){
            if(cur1->val < cur2->val){
                pre->next = cur1;
                cur1 = cur1->next;
            }
            else{
                pre->next = cur2;
                cur2 = cur2->next;
            }
            pre = pre->next;
        }
        pre->next = cur1 != nullptr ? cur1:cur2;
        return head;
    }
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LeetCode21. Merge Two Sorted Lists 的相关文章

  • BASIC 中的 C 语言中的 PeekInt、PokeInt、Peek、Poke 等效项

    我想知道该命令的等效项是什么Peek and Poke 基本和其他变体 用 C 语言 类似PeekInt PokeInt 整数 涉及内存条的东西 我知道在 C 语言中有很多方法可以做到这一点 我正在尝试将基本程序移植到 C 语言 这只是使用
  • 调用 McAfee 病毒扫描引擎

    我收到客户的请求 要求使用他们服务器上的 McAfee 病毒扫描将病毒扫描集成到应用程序中 我做了一些调查 发现 McScan32 dll 是主要的扫描引擎 它导出各种看起来有用的函数 我还发现提到了 McAfee Scan Engine
  • STL 迭代器:前缀增量更快? [复制]

    这个问题在这里已经有答案了 可能的重复 C 中的预增量比后增量快 正确吗 如果是 为什么呢 https stackoverflow com questions 2020184 preincrement faster than postinc
  • 通过引用传递 [C++]、[Qt]

    我写了这样的东西 class Storage public Storage QString key const int value const void add item QString int private QMap
  • 机器Epsilon精度差异

    我正在尝试计算 C 中双精度数和浮点数的机器 epsilon 值 作为学校作业的一部分 我在 Windows 7 64 位中使用 Cygwin 代码如下 include
  • 为什么 GCC 不允许我创建“内联静态 std::stringstream”?

    我将直接前往 MCVE include
  • 如何在 C++ 中标记字符串?

    Java有一个方便的分割方法 String str The quick brown fox String results str split 在 C 中是否有一种简单的方法可以做到这一点 The 增强分词器 http www boost o
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • 访问外部窗口句柄

    我当前正在处理的程序有问题 这是由于 vista Windows 7 中增强的安全性引起的 特别是 UIPI 它阻止完整性级别较低的窗口与较高完整性级别的窗口 对话 就我而言 我想告诉具有高完整性级别的窗口进入我们的应用程序 它在 XP 或
  • ASP.NET Core 3.1登录后如何获取用户信息

    我试图在登录 ASP NET Core 3 1 后获取用户信息 如姓名 电子邮件 id 等信息 这是我在登录操作中的代码 var claims new List
  • 如何获取 EF 中与组合(键/值)列表匹配的记录?

    我有一个数据库表 其中包含每个用户 年份组合的记录 如何使用 EF 和用户 ID 年份组合列表从数据库获取数据 组合示例 UserId Year 1 2015 1 2016 1 2018 12 2016 12 2019 3 2015 91
  • 两个类可以使用 C++ 互相查看吗?

    所以我有一个 A 类 我想在其中调用一些 B 类函数 所以我包括 b h 但是 在 B 类中 我想调用 A 类函数 如果我包含 a h 它最终会陷入无限循环 对吗 我能做什么呢 仅将成员函数声明放在头文件 h 中 并将成员函数定义放在实现文
  • 空指针与 int 等价

    Bjarne 在 C 编程语言 中写道 空指针与整数零不同 但 0 可以用作空指针的指针初始值设定项 这是否意味着 void voidPointer 0 int zero 0 int castPointer reinterpret cast
  • 为什么使用小于 32 位的整数?

    我总是喜欢使用最小尺寸的变量 这样效果就很好 但是如果我使用短字节整数而不是整数 并且内存是 32 位字可寻址 这真的会给我带来好处吗 编译器是否会做一些事情来增强内存使用 对于局部变量 它可能没有多大意义 但是在具有数千甚至数百万项的结构
  • 如何在 Linq to SQL 中使用distinct 和 group by

    我正在尝试将以下 sql 转换为 Linq 2 SQL select groupId count distinct userId from processroundissueinstance group by groupId 这是我的代码
  • 如何在 Android 中使用 C# 生成的 RSA 公钥?

    我想在无法假定 HTTPS 可用的情况下确保 Android 应用程序和 C ASP NET 服务器之间的消息隐私 我想使用 RSA 来加密 Android 设备首次联系服务器时传输的对称密钥 RSA密钥对已在服务器上生成 私钥保存在服务器
  • C++ 继承的内存布局

    如果我有两个类 一个类继承另一个类 并且子类仅包含函数 那么这两个类的内存布局是否相同 e g class Base int a b c class Derived public Base only functions 我读过编译器无法对数
  • 对于某些 PDF 文件,LoadIFilter() 返回 -2147467259

    我正在尝试使用 Adob e IFilter 搜索 PDF 文件 我的代码是用 C 编写的 我使用 p invoke 来获取 IFilter 的实例 DllImport query dll SetLastError true CharSet
  • 为什么 std::uint32_t 与 uint32_t 不同?

    我对 C 有点陌生 我有一个编码作业 很多文件已经完成 但我注意到 VS2012 似乎有以下语句的问题 typedef std uint32 t identifier 不过 似乎将其更改为 typedef uint32 t identifi
  • C# 使用“?” if else 语句设置值这叫什么

    嘿 我刚刚看到以下声明 return name null name NA 我只是想知道这在 NET 中叫什么 是吗 代表即然后执行此操作 这是一个俗称的 条件运算符 三元运算符 http en wikipedia org wiki Tern

随机推荐

  • 基于SpringBoot+Vue的中山社区医疗综合服务平台设计实现(源码+lw+部署文档+讲解等)

    文章目录 前言 详细视频演示 具体实现截图 技术栈 后端框架SpringBoot 前端框架Vue 持久层框架MyBaitsPlus 系统测试 系统测试目的
  • 智慧排水检测系统,提升城市生命线管理效率

    随着城市化的快速发展 排水系统作为城市生命线的重要组成部分 其管理和维护对于城市的正常运行至关重要 传统的排水系统监测方法往往依赖人工巡查和定期的设备检查 存在效率低下 易出错等问题 为了解决这些问题 智慧排水监测系统应运而生 本文将详细介
  • Vue 条件渲染 v-if

    v if 指令 用于控制元素的显示或隐藏 执行条件 当条件为 false 时 会将元素从 DOM 中删除 应用场景 适用于显示隐藏切换频率较低的场景 语法格式 div 内容 div 基础用法
  • ISO认证的意义以及费用

    ISO认证是国际标准化组织制定的一套标准体系 它对于企业来说具有重要的意义 ISO认证可以帮助企业提高管理水平 提升产品品质 增强市场竞争力 同时也是企业拓展市场 开拓客户的重要手段 一 ISO认证的意义 ISO认证具有以下几个方面的意义
  • ExperimentalWarning: The http2 module is an experimental API.

    错误提示 Node js ExperimentalWarning The fs promises API is experimental 原因是node的版本不是最新的 而在项目引入的模块是最新的 node js的版本低于模块的版本 解决方
  • 一键证件照换底色软件哪个好?这款让你的证件照独具特色!

    在我们生活中 有很多时候需要用到证件照 无论是报名考试还是申请签证 都需要提供一张规格标准的证件照片 然而 有时候我们拍摄的照片可能存在一些问题 比如背景色不符合要求 这时候 如果有一款一键证件照换底色软件 就能够轻松解决这个问题了 首先
  • 基于单片机设计的电子指南针(LSM303DLH模块(三轴磁场 + 三轴加速度)

    一 前言 本项目是基于单片机设计的电子指南针 主要利用STC89C52作为主控芯片和LSM303DLH模块作为指南针模块 通过LCD1602液晶显示屏来展示检测到的指南针信息 在日常生活中 指南针是一种非常实用的工具 可以帮助我们确定方向
  • C# Tcplistener,Tcp服务端简易封装

    文章目录 前言 相关文章 前言 设计 代码 简单使用 运行结果 前言 我最近有个需求要写Tcp服务端 我发现Tcp服务端的回调函数比较麻烦 简化Tcp的服务 我打算自己封装一个简单的Tcp服务端 相关文章 C TCP应用编程三 异步TCP应
  • 超级好用的SQL语句大全

    文章目录 一 DDL Data Definition Language 数据定义语言 1 操作库 2 操作表 二 DML Data Manipulation Language 数据操作语言 1 增加 insert into 2 删除 del
  • 如何利用 Kubernetes 的新 CronJob API 进行高效的任务调度

    Kubernetes 的 CronJob API 是在云原生环境中自动执行常规任务的关键功能 本指南不仅引导您完成使用此 API 的步骤 还说明了它非常有用的实际用例 先决条件 正在运行的 Kubernetes 集群 版本 1 21 或更高
  • MySQL数据库:为什么它是您的最佳选择?

    MySQL是一个关系型数据库管理系统 由瑞典MySQL AB公司开发 目前属于Oracle旗下产品 MySQL是最流行的关系型数据库管理系统之一 在WEB应用方面 MySQL是最好的RDBMS Relational Database Man
  • Linux中使用HTTP协议进行API交互的示例——你的“API小伙伴”

    大家好 今天我们要聊聊在Linux中如何使用HTTP协议进行API交互 听起来有点高大上 但其实并不难 让我们一起来看看 首先 我们需要了解什么是API API 全名为应用程序接口 Application Programming Inter
  • Android开发,使用kotlin学习多媒体功能(详细)

    一 通知 1 用到的类和方法 1 Context类 getSystemService 接收一个字符串参数用于确定获取系统的哪个服务 这里我们传入Context NOTIFICATION SERVICE 获取NotificationManag
  • 由于人工智能和自动化,2030 年将不存在的 6 个科技工作岗位

    我们都知道人工智能和自动化已经存在 并且有很多关于它们将如何扰乱日常业务实践以及支撑它们的专业角色的讨论 虽然预测某些工作岗位将彻底消失似乎很戏剧性 但对未来可能发生的情况保持现实态度是明智的 以便为接下来发生的事情做好准备 因此 考虑到这
  • VScode配置mingw C语言环境变量

    C语言IDE VScode VScode是个人比较喜欢的一款IDE软件 鄙人曾同时在VScode软件中运行三个终端 开发Python Golang和C语言 下载地址如下 code visualstudio com VScode配置mingw
  • 独孤思维:年底新项目,8年陪伴共同成长

    没赚到钱的人 为了证明自己的能力和与众不同 他们都会通过不断消费来包装自己 满足自己 感觉好像自己很有钱很牛b 其实都不是自己的钱 也都没有能力去赚钱 本质上 就是满足自己的虚荣心 企图让别人觉得 自己很牛 但是 你让他干个稍微有点技术含量
  • 【Android】百度地图 获取开发密钥,创建应用(保姆级教程)

    进入百度网址 网址 百度地图开放平台 百度地图API SDK 地图开发 baidu com 登录百度账号 进入官网控制台 点击 应用管理 gt 我的应用 gt 创建应用 在创建应用里 应用类型选择Android SDK 接下来 我们要获取发
  • 从零开始学python必看,最强“Python编程三剑客(pdf)”,你值得拥有!

    从0开始学Python 就问你一句 慌不慌 说句实在的 慌 可能是因为你自己没有完整的规划 其实就是不知道从何下手 七七八八乱学一通自然还是觉得无厘头 但今天 我要跟你讲 莫慌 恰好前几天从朋友那得到一套最强 Python编程三剑客 Pyt
  • react创建路由两种方式

    react创建路由两种方式 两种方式都需要下载相关依赖 依赖如下 npm i react router dom 方式一 使用 useRoutes 使用 BrowserRouter 或者 HashRouter 在 index tsx 中 im
  • LeetCode21. Merge Two Sorted Lists

    文章目录 一 题目 二 题解 一 题目 You are given the heads of two sorted linked lists list1 and list2 Merge the two lists into one sort