在刷剑指offer的时候遇到合并链表的题,使用python尝试用递归方法来解,结果出现了global name 'Merge' is not defined
的错误,原因是在递归调用的时候需要使用self.Merge()
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution:
# 返回合并后列表
def Merge(self, pHead1, pHead2):
# write code here
if pHead1 ==None:
return pHead2
if pHead2 == None:
return pHead1
pMerge = None
if pHead1 !=None and pHead2!=None:
if pHead1.val>pHead2.val:
pMerge = pHead2
pMerge.next = self.Merge(pHead2.next,pHead1)
else:
pMerge = pHead1
pMerge.next = self.Merge(pHead1.next,pHead2)
return pMerge