leetcode21-Merge Two Sorted Lists

embedded/2024/9/24 7:44:02/

题目

将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
示例 1:
输入:l1 = [1,2,4], l2 = [1,3,4]
输出:[1,1,2,3,4,4]
示例 2:
输入:l1 = [], l2 = []
输出:[]
示例 3:
输入:l1 = [], l2 = [0]
输出:[0]

分析

用一个指针去串联俩个链表,用一个指针记录新链表的头结点

java">public class LinkNode {int val;LinkNode next;public LinkNode(int data) {this.val = data;this.next = null;}
}
public class LinkList {LinkNode head;public LinkList() {this.head = null;}public LinkNode getHead() {return this.head;}//添加元素public void addNode(int data) {LinkNode node = new LinkNode(data);if (this.head == null) {this.head = node;} else {LinkNode cur = this.head;while(cur.next != null) {cur = cur.next;}cur.next = node;}}//正序打印public void print(LinkNode node) {while(node != null) {System.out.print(node.val);System.out.print(" ");node = node.next;}System.out.println();}public LinkNode merget(LinkNode nodea,LinkNode nodeb) {LinkNode head = new LinkNode(0);LinkNode pNode = new LinkNode(0);while(nodea != null && nodeb != null) {if(nodea.val < nodeb.val) {if(head.next==null) {head.next = nodea;}pNode.next = nodea;nodea = nodea.next;pNode = pNode.next;} else {if(head.next==null) {head.next = nodeb;}pNode.next = nodeb;nodeb = nodeb.next;pNode = pNode.next;}}while(nodea != null) {if(head.next==null) {head.next = nodea;}pNode.next = nodea;nodea = nodea.next;pNode = pNode.next;}while(nodeb != null) {if(head.next==null) {head.next = nodeb;}pNode.next = nodeb;nodeb = nodeb.next;pNode = pNode.next;}print(head.next);return head.next;}}
public class mergeTwoSortedLists {public static void main(String[] args) {LinkList list1 = new LinkList();list1.addNode(1);list1.addNode(2);list1.addNode(3);LinkList list2 = new LinkList();list2.addNode(1);list2.addNode(3);list2.addNode(4);list1.merget(list1.getHead(),list2.getHead());}}

http://www.ppmy.cn/embedded/37267.html

相关文章

在Linux上使用Selenium驱动Chrome浏览器无头模式

大家好&#xff0c;我们平时在做UI自动化测试的时候&#xff0c;经常会用到Chrome浏览器的无头模式&#xff08;无界面模式&#xff09;&#xff0c;并且将测试代码部署到Linux系统中执行&#xff0c;或者平时我们写个爬虫爬取网站的数据也会使用到&#xff0c;接下来和大家分享…

鸿蒙内核源码分析(工作模式篇) | CPU的七种工作模式

本篇说清楚CPU的工作模式 工作模式(Working mode) 也叫操作模式&#xff08;Operating mode&#xff09;又叫处理器模式&#xff08;Processor mode&#xff09;&#xff0c;是 CPU 运行的重要参数&#xff0c;决定着处理器的工作方式&#xff0c;比如如何裁决特权级别和报告异…

掌握这些道理可以使人在人生的舞台上更加从容和自信。

1. 树立威信应该先严厉而后宽松&#xff0c;才会既让人畏惧&#xff0c;又受人尊重&#xff0c;如果先宽松而后严厉&#xff0c; 人们就只会怨恨你的冷酷。 2. 未老先残&#xff0c;未老先病&#xff0c;未来将一片惨淡&#xff0c;安全牢记在心&#xff0c;时刻做好预防。 3. …

游戏辅助 -- 实战找人物对象基址

本节课在线学习视频&#xff1a; https://pan.quark.cn/s/3e83f4568031 一、打开CE工具&#xff0c;加载游戏进程 二、搜索人物血量144&#xff0c;选择首次扫描 三、进入游戏&#xff0c;让人物血量发生变化&#xff0c;搜索减少的数值 四、发现绿色的数值&#xff0c;一般绿…

为什么会查询不到DNS信息?怎么排查?

DNS&#xff08;域名系统&#xff09;是将域名转换为相应 IP 地址的关键系统。查询 DNS 信息具有重要作用&#xff0c;通过查询 DNS 信息&#xff0c;我们可以知道域名对应的 IP 地址&#xff0c;这是最主要的信息&#xff0c;使设备能与目标服务器进行通信&#xff1b;其次是域…

如何使用vue脚手架创建项目

前言 使用vue搭建项目的时候&#xff0c;我们可以通过对应的cmd命令去打开脚手架&#xff0c;然后自己配置对应的功能插件 说明&#xff1a; 要使用Vue脚手架创建项目&#xff0c;你需要先确保你已经安装了Node.js和npm&#xff08;Node.js的包管理器&#xff09;。然后&#…

使用excel合理整理数据

使用excel合理整理数据 Excel函数LOOKUP把两个sheet数据关联起来LOOKUP函数 Excel函数LOOKUP把两个sheet数据关联起来 LOOKUP函数 需求场景 1、sheet1是视频的数据比如 aid、作者、视频信息 2、sheet2是视频的播放数据比如 aid vv uv等 做的就是根据1、2 的aid 将 sheet2中的所…

[Linux][网络][TCP][四][流量控制][拥塞控制]详细讲解

目录 1.流量控制2.拥塞控制0.为什么要有拥塞控制&#xff0c;不是有流量控制么&#xff1f;1.什么是拥塞窗口&#xff1f;和发送窗口有什么关系呢&#xff1f;2.怎么知道当前网络是否出现了拥塞呢&#xff1f;3.拥塞控制有哪些算法&#xff1f;4.慢启动5.拥塞避免6.拥塞发生7.快…