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

Leetcode-每日一题【剑指 Offer 25. 合并两个排序的链表】

题目

输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。

示例1:

输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4

限制:

  • 0 <= 链表长度 <= 1000

解题思路

1.题目要求我们合并两个链表并使新链表中的节点仍然是递增排序的。

2.首先我们设置一个虚拟头节点merge,让 temp 指向 merge 

然后比较l1和l2指向元素的大小将小的元素先入队,若相等时将l2指向的元素先入栈

 然后将指针指向被入队元素的下一个元素(此处的l2就指向了 1 的下一个元素 3)

  

 

 这时l2已经指向null 了,我们只需要将还没有入队的l1中的元素接在 temp 后面即可。

代码实现

class Solution {public ListNode mergeTwoLists(ListNode l1, ListNode l2) {ListNode merge = new ListNode(0);ListNode temp = merge;while(l1 != null && l2 != null ){if(l1.val < l2.val){temp.next = l1;l1 = l1.next;}else{temp.next = l2;l2 = l2.next;}temp = temp.next;}temp.next = l1 == null ? l2 : l1;return merge.next;}
}

测试结果

http://www.lryc.cn/news/122563.html

相关文章:

  • 前端盒子模型
  • 【ARM Cache 系列文章 9 -- ARM big.LITTLE技术】
  • 【BASH】回顾与知识点梳理(十四)
  • 乡村振兴指数与其30余个原始变量数据(2000-2022年)
  • 深入理解MySQL表的操作和管理
  • MATLAB图论合集(一)基本操作基础
  • Redis布隆过滤器的原理和应用场景,解决缓存穿透
  • 数据结构中的英文缩写和易忘的专有名词
  • Unity C# 之 Http 获取网页的 html 数据,并去掉 html 格式等相关信息
  • MODBUS TCP转CCLINK IE协议网关cclink通讯异常的处理方法
  • linux中的ifconfig和ip addr
  • 图像多目标跟踪
  • 42 | 航空公司客户价值分析
  • 第三章 图论 No.11二分图,匈牙利算法与点覆盖
  • Die2Die(D2D)和chip2chip(C2C)之间的高速互联接口
  • JAVA设计模式汇总
  • 【实战讲解】数据血缘落地实施
  • Java课题笔记~ ServletContext
  • 设备取电芯片LDR6328Q
  • Redis 事务、持久化、复制原理分析
  • 初识鸿蒙跨平台开发框架ArkUI-X
  • uniapp开发小程序-分包(微信错误码:800051)
  • n-皇后问题
  • JS如何向数组中添加数组
  • 串口通信收发项目级一
  • 设计模式之七:适配器模式与外观模式
  • FFmpeg接收UDP码流
  • 【Pytroch】基于支持向量机算法的数据分类预测(Excel可直接替换数据)
  • 【Git】git初始化项目时 | git默认创建main分之 | 如何将git默认分支从main改为master
  • Vue3中配置environment