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

21. 合并两个有序链表 --力扣 --JAVA

题目

将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 

解题思路

  1. 判断特殊情况,如:两个列表中其中一个为空;
  2. 创建一个初始节点用于返回;
  3. 通过while循环来逐个遍历链表,并对比节点值;
  4. 将为遍历完的链表直接赋值给记录节点(因为链表当前节点包含下一个节点的信息,所以不需要逐个遍历来进行赋值);

代码展示

class Solution {public ListNode mergeTwoLists(ListNode list1, ListNode list2) {if(list1 == null){return list2;}if(list2 == null){return list1;}ListNode ans = null;if(list1.val <= list2.val){ans = list1;list1 = list1.next;} else {ans = list2;list2 = list2.next;}//记录节点ListNode nex = ans;while (list1 != null && list2 != null){if(list1.val <= list2.val){nex.next = list1;list1 = list1.next;} else {nex.next = list2;list2 = list2.next;}nex = nex.next;}if(list1 == null){nex.next = list2;} else {nex.next = list1;}return ans;}
}

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

相关文章:

  • Linux 基本语句_10_进程
  • 矩阵起源加入 OpenCloudOS 操作系统开源社区,完成技术兼容互认证
  • 3D物理模拟和视觉特效软件SideFX Houdini mac中文介绍
  • GPT-4.0网页平台-ChatYY
  • mysql,redis导入导出数据库数据
  • conda修改虚拟环境名称
  • c语言,将奇数和偶数分类
  • 前端设计模式之【观察者模式】
  • HTTPS安全相关-通信安全的四个特性-ssl/tls
  • 并查集:Leetcode765 情侣牵手
  • 如何设计一个网盘系统的架构
  • 【代码随想录】算法训练计划17
  • “护肤品销售策略:从“免费拼团”到“3人回本大放送”“
  • uniapp和vue3+ts开发小程序,使用vscode提示声明变量冲突解决办法
  • CCLink转Modbus TCP网关_MODBUS报文配置
  • 【开源】基于Vue.js的大学兼职教师管理系统的设计和实现
  • Mysql数据库 14.SQL语言 视图
  • 【Acwing171】送礼物(双向dfs)题解
  • 机器学习---多分类SVM、支持向量机分类
  • 玩转Linux基本指令
  • 【开源分享】国内可用的免费安卓GPT语音助手 - 可音量键唤起,可联网
  • 什么是安全平行切面
  • Git 入门使用 —— 建库、代码上下传、常用命令
  • HTML5学习系列之简单使用1
  • 计算机网络第一章(计算机网络开篇)
  • 百度秋招突击手册面试算法题:三数之和
  • 归并排序 图解 递归 + 非递归 + 笔记
  • 2023 年最好的 Android 系统修复/刷机应用程序和软件
  • Linux下内网穿透实现云原生观测分析工具的远程访问
  • 卡数据兼容性要求-M2M架构