class ListNode: def init(self, x): self.val = x self.next = None class Solution: def mergeTwoLists(self, l1, l2): """ :type l1: ListNode :type l2: ListNode :rtype: ListNode """
head = ListNode(0)
first = head
while l1!=None and l2!=None:
if l1.val <= l2.val:
head.next = l1
l1 = l1.next
else:
head.next = l2
l2 = l2.next
head = head.next
if l1 != None:
head.next = l1
elif l2 != None:
head.next = l2
return first.next
head1 = ListNode(1) n1 = ListNode(2) n2 = ListNode(4) n3 = ListNode(5) head1.next = n1 n1.next = n2 n2.next = n3
有序链表
head2 = ListNode(1) m1 = ListNode(2) m2 = ListNode(3) m3 = ListNode(8) head2.next = m1 m1.next = m2 m2.next = m3
s = Solution() res = s.mergeTwoLists(head1,head2) while res: print(res.val) res = res.next