【剑指offer】合并两个排序的链表(python)
一开始的想法是将两个链表都放到一个数组里,排序后再建成一个链表,但是python列表不能对两个链表节点进行大小比较,所以还是用传统思路,依次比较两个链表节点的大小,接到答案链表里,最后剩下的部分直接接上。
# -*- coding:utf-8 -*-
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution:
def Merge(self, pHead1, pHead2):
# write code here
List = []
if pHead1 is None:
if pHead2 is None:
return None
else:
return pHead2
p1 = pHead1
p2 = pHead2
head = ListNode(0)
pre = head
while p1 and p2:
if p1.val <= p2.val:
pre.next = p1
p1 = p1.next
else:
pre.next = p2
p2 = p2.next
pre = pre.next
if p1:
pre.next = p1
if p2:
pre.next = p2
return head.next

京公网安备 11010502036488号