首页 > 其他 > 详细

LeetCode 21. 合并两个有序链表

时间:2020-02-19 21:12:04      阅读:36      评论:0      收藏:0      [点我收藏+]

题意

将两个有序链表合并为一个新的有序链表。

思路

  • 直接写。时间复杂度:\(O(n+m)\),其中\(n\)\(m\)分别为两个链表的长度。空间复杂度:\(O(1)\)

代码

class Solution {
public:
    ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {

        ListNode res(0), *t = &res;
        
        while(l1 && l2)
        {
            if(l1 -> val < l2 -> val)
            {
                t -> next = l1;
                l1 = l1 -> next;
            }
            else
            {
                t -> next = l2;
                l2 = l2 -> next;
            }
            t = t -> next;
        }
        t -> next = l1 == NULL ? l2 : l1;

        return res.next;
    }
};

总结

啦啦啦。

LeetCode 21. 合并两个有序链表

原文:https://www.cnblogs.com/songjy11611/p/12332977.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!