面试算法-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;
    }
}
相关推荐
weixin_395448919 分钟前
main.c_cursor_0129
前端·网络·算法
CS创新实验室22 分钟前
《计算机网络》深入学:路由算法与路径选择
网络·计算机网络·算法
一条大祥脚22 分钟前
ABC357 基环树dp|懒标记线段树
数据结构·算法·图论
tod11322 分钟前
力扣高频 SQL 50 题阶段总结(四)
开发语言·数据库·sql·算法·leetcode
naruto_lnq33 分钟前
C++中的桥接模式
开发语言·c++·算法
苦藤新鸡34 分钟前
50.腐烂的橘子
数据结构·算法
无限进步_35 分钟前
面试题 02.02. 返回倒数第 k 个节点 - 题解与详细分析
c语言·开发语言·数据结构·git·链表·github·visual studio
想进个大厂39 分钟前
代码随想录day32 动态规划01
算法·动态规划
j445566111 小时前
C++中的职责链模式高级应用
开发语言·c++·算法
uesowys1 小时前
Apache Spark算法开发指导-Decision tree classifier
算法·决策树·spark