题目:
输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。
示例1:
输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4
限制:
0 <= 链表长度 <= 1000
题目的理解:
需要理解是递增的单向链表,并且需要考虑链表为空的情况。
python实现
# 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:
left = l1
right = l2
if left is None and right is None:
return None
elif left is None:
return right
elif right is None:
return left
else:
if left.val > right.val:
result = ListNode(right.val)
right = right.next
else:
result = ListNode(left.val)
left = left.next
current = result
while True:
if left is None and right is None:
break
elif left is None:
current.next = right
break
elif right is None:
current.next = left
break
if left.val > right.val:
current.next = ListNode(right.val)
right = right.next
else:
current.next = ListNode(left.val)
left = left.next
current = current.next
return result
提交

// END 做了一天的链表,还是有一点点的理解了
网友评论