美文网首页算法提高之LeetCode刷题
leetcode.21 - 合并两个有序链表

leetcode.21 - 合并两个有序链表

作者: 半亩房顶 | 来源:发表于2019-03-29 13:48 被阅读1次

题目

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

//示例:
输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4

思路

emmm,就是最简单的想法就够了,类似归并排序的合并步骤

注意点

  • 判断条件使用 < 不使用 >=,我说我记得性能有差距但是找不到根据了,你愿意信么?
  • 注意边界判断

代码

def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:
        l = lt = ListNode(0)
        
        while l1 and l2:
            if l1.val <= l2.val:
                lt.next = l1
                l1 = l1.next
            else:
                lt.next = l2
                l2 = l2.next
            lt = lt.next
        
        if l1:
            lt.next = l1
        elif l2:
            lt.next = l2
        return l.next

以上

欢迎大家关注我的公众号


半亩房顶

相关文章

  • leecode刷题(23)-- 合并两个有序链表

    leecode刷题(23)-- 合并两个有序链表 合并两个有序链表 将两个有序链表合并为一个新的有序链表并返回。新...

  • leetcode.21 - 合并两个有序链表

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

  • 合并单链表

    合并两个有序链表非递归实现 合并两个有序链表递归实现

  • leetcode 链表 [C语言]

    21. 合并两个有序链表 合并两个有序链表 61. 旋转链表 (快慢指针) 61. 旋转链表 相关标签 : 链表 ...

  • ARTS-Week6 有序链表合并、DevOps、Json解析、

    Algorithm LeetCode原题链接: 合并两个有序链表 将两个有序链表合并为一个新的有序链表并返回。新链...

  • 2018-12-26

    问题列表 合并两个有序链表 合并K个排序链表 合并区间 插入区间 问题与反馈 总结与收获 多个有序链表的合并,类似...

  • leetcode的题目21

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

  • Swift 合并两个有序链表 - LeetCode

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

  • LeetCode 21. 合并两个有序链表

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

  • 刷leetCode算法题+解析(四)

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

网友评论

    本文标题:leetcode.21 - 合并两个有序链表

    本文链接:https://www.haomeiwen.com/subject/zzdlbqtx.html