LeetCode 021:合併兩個有序鏈表

一、寫在前面

之前寫過的Leetcode筆記:點擊查看
今天給大家分享的是LeetCode 021:合併兩個有序鏈表,爲面試而生,期待你的加入。

二、今日題目

將兩個有序鏈表合併爲一個新的有序鏈表並返回。
新鏈表是通過拼接給定的兩個鏈表的所有節點組成的。

示例:

輸入:1->2->4, 1->3->4
輸出:1->1->2->3->4->4

三、 分析

今天時間關係,我就直接做了,思路簡單:鏈接兩個鏈表,然後排序。

四、解題

  • 方法一:別人的方法,遞歸。
# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution:
    def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:
        if l1 and l2:
            if l1.val > l2.val: l1, l2 = l2, l1
            l1.next = self.mergeTwoLists(l1.next, l2)
        return l1 or l2

作者:QQqun902025048
鏈接:https://leetcode-cn.com/problems/merge-two-sorted-lists/solution/python-4xing-by-knifezhu-3/
來源:力扣(LeetCode)

執行結果:

自己的方法還在改bug。

五、疑惑

六、結語

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章