【刷题笔记——链表专栏】牛客网:合并两个排序链表

news2024/7/4 5:11:05

【刷题笔记——链表专栏】牛客网:合并两个排序链表

一、题目描述

在这里插入图片描述
在这里插入图片描述

二、思路分析

1、创建新的头节点newHead(注意这一步)
2、循环遍历pHead1和pHead2并进行链表并进行合并,直到pHead1和pHead2其中有一个为null时结束循环
3、合并完成后,pHead1和pHead2谁还有剩余,将其链接到p之后
4、最后返回newHead.next

代码实现如下

    public ListNode Merge(ListNode pHead1, ListNode pHead2) {
        //1、创建新的头节点newHead
        ListNode newHead = new ListNode(-1);
        //创建p节点指向newHead用于在链表循环时遍历移动,而newHead作为新的头节点则不动
        ListNode p = newHead;

        //2、循环遍历pHead1和pHead2并进行链表并进行合并,直到pHead1和pHead2其中有一个为null时结束循环
        while (pHead1 != null && pHead2 != null) {
            if (pHead1.val < pHead2.val) {
                p.next = pHead1;
                pHead1 = pHead1.next;
            } else {
                p.next = pHead2;
                pHead2 = pHead2.next;
            }
            p = p.next;
        }

        //3、合并完成后,pHead1和pHead2谁还有剩余,将其链接到p之后
        p.next = pHead1 != null? pHead1 : pHead2;

        //4、最后返回newHead.next
        return newHead.next;
    }

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Win10,Win11玩游戏找不到d3dx9怎么解决

相信有些朋友遇到了d3dx9_42.dll丢失的情况不知道怎么解决&#xff0c;而今日小编带来的这篇文章就是讲解关于d3dx9_42.dll丢失进行修复的操作内容&#xff0c;d3dx9_42.dll丢失怎么解决&#xff1f;&#xff08;修复方法&#xff09;d3dx9 42.dll文件是DirectX中必备文件,许多…

【期末不挂科 学习数据结构】

期末不挂科 学习数据结构 第一章绪论1.1数据结构的基本概念1.1.1基本概念和术语1.数据2.数据元素3.数据对象4.数据类型5.数据结构 1.1.2数据结构三要素1.数据的逻辑结构2.数据的存储结构3.数据的运算 第一章绪论 1.1数据结构的基本概念 1.1.1基本概念和术语 1.数据 数据是信…

Redis7【⑧ Redis集群(cluster)】

Redis集群 Redis 集群是 Redis 数据库的分布式解决方案&#xff0c;它可以将数据分散存储在多个节点上&#xff0c;以支持大规模数据存储和高并发访问。 Redis 集群使用的是基于槽的分区策略&#xff0c;即将数据分成固定数量的槽&#xff0c;每个槽由一个主节点和多个从节点组…

Python基础教程: 入门简介

Python 最初由 Guido van Rossum 在 1991 年开发&#xff0c;当时他在执行其他项目的时候需要编写一个简单的解释器。Python 最初只是一种简单的脚本语言&#xff0c;但在后来的发展中&#xff0c;它迅速成为一种流行的编程语言。 Python 不仅在大型科技企业中应用广泛&#x…

spring cloud 之 gateway

网关介绍 在微服务架构体系中&#xff0c;一个系统会被拆分为很多个微服务&#xff0c;那么作为客户端要如何去调用这么多的微服务呢&#xff1f;如果没有网关的存在&#xff0c;我们只能在客户端记录每个微服务的地址&#xff0c;然后分别调用&#xff0c;当然这样是不现实的…

Mysql事务原理

一、概述 事务&#xff1a;一组操作要么全部成功&#xff0c;要么全部失败&#xff0c;目的是为了保证数据最终的一致性。 数据库一般都会并发执行多个事务&#xff0c;多个事务可能会并发的对相同的一批数据进行增删改查操作&#xff0c;可能就会导致我们说的脏写、脏读、不可…

水站桶装水订水系统桶装水小程序,改变了桶装水行业传统的送水模式;

水站桶装水订水系统桶装水小程序&#xff0c;改变了桶装水行业传统的送水模式&#xff0c;客户通过线上下单&#xff0c;送水工实时接单配送&#xff0c;空桶更好的记录管理&#xff0c;财务数据在后台清晰明了&#xff0c;提高了水站的工作效率。 除此之外&#xff0c;还有很多…

网络系统集成实验(五)| 系统集成路由器OSPF动态、综合路由配置

一、前言 该系列文章将会对网络系统集成课程中相关实验进行更新&#xff0c;本篇为第五篇&#xff0c;有关路由器的OSPF、综合路由配置&#xff0c;包括了OSPF的配置实验、单臂路由实验、RIP配置实验、综合实验等。 注意&#xff1a;该实验的后半部分综合实验基于前面的实验&am…

java Collection集合使用笔记

1、Collection集合概述 它是单例集合的最顶层接口&#xff0c;它表示一组对象&#xff0c;这些对象也称之为Collection的元素JDK不提供此接口任何直接实现&#xff0c;但提供更具体的子接口&#xff08;如&#xff1a;List和Set&#xff09;实现创建Collection集合对象的方法&…

麒麟信安与飞腾携手共赴云端

当前各行业已进入全面云化时代&#xff0c;云桌面技术作为典型办公终端替代方案&#xff0c;凭借其数据安全、便捷运维、综合成本占优的优势正逐步在各行业应用实施。伴随十四五规划加速数字化转型及信息产业核心技术自主化发展&#xff0c;各政企组织迫切需要基于国产软硬件实…

gmap构建离线地图,用createCustomerTiledLayer方法,瓦片地址尾部多了 ?x={x}y={y}z{z} 导致无法显示地图。

gmap构建离线地图&#xff0c;用createCustomerTiledLayer方法&#xff0c;瓦片地址尾部多了 ?x{x}&y{y}&z&{z} 导致无法显示地图。 function initMap() {this.map new GL.Map(map, {center: "120.650847,31.3092434",zoom: 12,zoomControl: false,sca…

青大数据结构【2018】【算法设计】

关键词&#xff1a; 单链表递增、树的先序遍历 1&#xff09;带头结点的单链表L&#xff0c;从首结点开始&#xff0c;依次两两比较&#xff0c;如果前者大于等于后者&#xff0c;说明是非递增的&#xff1b;否则递增。 2&#xff09; 1&#xff09;先遍历二叉树&#xff0c;…

【mars3d】基于vue3的marsgis通用UI库 mars-ui 的使用

一名脑残程序员的mars-ui心酸使用记录。 通过mars3d的官网我们可以看到&#xff0c;有配套的UI库使用&#xff0c;那么我们如何使用到自己的项目中呢&#xff0c;跟着文章一步一步来吧&#xff01; 1、引入UI库 ① 安装ant-design-vue cnpm install ant-design-vue --save②…

如何实现功能插件化

本文将介绍两种方式来实现功能插件化&#xff1a; Java SPISpring factories 在整个插件化的方案中&#xff0c;会涉及到如下 3 个组成部分&#xff1a; 插件定义&#xff08;即将插件定义为一个接口&#xff09; 插件实现&#xff08;即对插件接口的实现&#xff09; 这里…

【需求实现】输入多少就输出多少的拟合任务如何实现(二):进度条简化

文章目录 导读普通的输出方式上下求索TensorBoard是个不错的切入点与Callback参数对应的Callback方法官方的内置Callback官方进度条简单的猜测与简单的验证拼图凑齐了&#xff01; 导读 在训练模型的过程中往往会有日志一堆一堆的困扰。我并不想知道&#xff0c;因为最后我会在…

今天给大家分享几款好用的卸载神器

在日常使用电脑的过程中&#xff0c;我们经常需要安装和卸载各种软件。然而&#xff0c;有时候使用操作系统自带的卸载程序可能无法完全清除程序及其相关文件和注册表项&#xff0c;导致系统出现垃圾文件和残留问题。为了解决这个困扰&#xff0c;今天我将向大家分享几款好用的…

【Spring】基于注解方式存取JavaBean:Spring有几种注入方式?有什么区别?

前言 Hello&#xff0c;我是小黄。众所周知&#xff0c;Spring是一个开源的Java应用程序框架&#xff0c;其中包括许多通过注解实现依赖注入的功能。Spring提供了多种注入方式&#xff0c;可以满足不同的需求和场景。常见的注入方式包括构造函数注入、Setter方法注入和属性注入…

【Redis】Redis的高可用与持久化

文章目录 一、Redis 高可用1. 概念2. 高可用技术以及作用2.1 持久化2.2 主从复制2.3 哨兵2.4 集群 二、Redis 持久化1. 持久化的功能2. Redis 持久化方式 三、RDB 持久化1. 概述2. 触发条件2.1 手动触发2.2 自动触发2.3 其他自动发机制 3. 执行流程4. 启动时加载 四、AOF 持久化…

Modin 入门学习

Modin 是一个 Python 第三方库&#xff0c;用于加速 Pandas 的 API 执行速度。原始的 Pandas 是单线程执行的&#xff0c;而 Modin 则重新打包了 Pandas 里面的 API&#xff0c;使其同时在多个内核中运行&#xff0c;提高硬件性能的利用率。 使用方法很简单&#xff0c;安装 M…

2.9C++多态

C 继承扩展 C继承在实际开发中它可以帮助我们实现代码重用&#xff0c;减少代码冗余&#xff0c;提高代码的可维护性和可扩展性。 通过继承&#xff0c;我们可以从已有的类中派生出新的类&#xff0c;新的类可以继承父类的属性和方法&#xff0c;并且可以添加自己的属性和方法…