LeetCode-Hot100 27.合并两个有序链表

一道非常经典的链表算法题,核心在于头节点的处理和一个链表遍历完毕后另外一个链表的处理

注意if和后面的else,如果写两个if的话就会错误

示例代码如下

java 复制代码
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    public ListNode mergeTwoLists(ListNode list1, ListNode list2) {
        ListNode dummy = new ListNode();
        ListNode cur = dummy;
        while(list1!=null&&list2!=null){
            if(list1.val<list2.val){
                cur.next = list1;
                list1 = list1.next;
            }else{
                cur.next = list2;
                list2 = list2.next;
            }
            cur = cur.next;
        }

        cur.next = list1!=null?list1:list2;
        return dummy.next;
    }
}
相关推荐
Felven4 分钟前
A. Riptide
算法·c 算法
m0_7393128711 分钟前
四元数、李群SO(3)/李代数so(3)的作用及应用场景
算法·机器人·自动驾驶
artificiali42 分钟前
880 第4章多元
人工智能·算法
Felven1 小时前
B. Deja Vu
数据结构·算法
小玮看世界1 小时前
[Python]螺旋遍历 vs 最短路径:方向控制类算法的“同源异流”
开发语言·python·算法
月华路1 小时前
《模型不玄学》第14章 标签、损失与样本权重
人工智能·算法·机器学习
黄金龙PLUS1 小时前
SPARKLE置换算法的优缺点
算法·网络安全·密码学·哈希算法·同态加密
不会就选b1 小时前
算法日常・每日刷题--<贪心>3
数据结构·算法·leetcode
ysu_03141 小时前
03-双链表与循环链表
c语言·数据结构·链表
学习星球1 小时前
编辑距离——二维 DP 的“最小操作“艺术
c++·leetcode·java-consul