面试算法-160-合并两个有序链表

题目

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

示例 1:

输入:l1 = [1,2,4], l2 = [1,3,4]

输出:[1,1,2,3,4,4]

java 复制代码
class Solution {
    public ListNode mergeTwoLists(ListNode list1, ListNode list2) {
        ListNode dummy = new ListNode(0);
        ListNode p3 = dummy;
        ListNode p1 = list1;
        ListNode p2 = list2;
        while (p1 != null && p2 != null) {
            if (p1.val <= p2.val) {
                p3.next = p1;
                p1 = p1.next;
            } else {
                p3.next = p2;
                p2 = p2.next;
            }

            p3 = p3.next;
        }

        p3.next = p1 == null ? p2 : p1;
        return dummy.next;
    }
}
相关推荐
小涛不学习4 分钟前
HTTP 和 HTTPS 详解(原理 + 区别 + 面试重点)
http·面试·https
不想看见4044 分钟前
Power of Four二进制特性--力扣101算法题解笔记
数据结构·算法
Moment5 分钟前
MiniMax 发布 M2.7,Agent 开始走向自我进化
前端·后端·面试
发现一只大呆瓜6 分钟前
Vue-Vue Router核心原理+实战用法全解析
前端·vue.js·面试
y = xⁿ7 分钟前
【LeetCodehot100】T23:合并k个升序链表
java·数据结构·链表
做怪小疯子19 分钟前
Leetcode刷题——8.重叠区间
算法·leetcode·职场和发展
2401_8578652321 分钟前
C++模块接口设计
开发语言·c++·算法
add45a32 分钟前
嵌入式C++低功耗设计
开发语言·c++·算法
发现一只大呆瓜33 分钟前
性能优化:CDN 缓存加速与调度原理
前端·javascript·面试
DeepModel34 分钟前
【概率分布】指数分布(Exponential Distribution)原理、推导与实战
python·算法·概率论