AcWing 36. 合并两个排序的链表
原题链接
简单
作者:
Yu123
,
2023-11-21 16:17:01
,
所有人可见
,
阅读 41
# Definition for singly-linked list.
# class ListNode(object):
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution(object):
def merge(self, l1, l2):
"""
:type l1: ListNode
:type l2: ListNode
:rtype: ListNode
"""
p1 = l1
p2 = l2
q = ListNode(-1)
dummy = ListNode(-1)
dummy.next = q
while p1 and p2:
if p1.val < p2.val:
q.next = p1
p1 = p1.next
else:
q.next = p2
p2 = p2.next
q = q.next
while p1:
q.next = p1
q = q.next
p1 = p1.next
while p2:
q.next = p2
q = q.next
p2 = p2.next
return dummy.next.next