"""
定义一个函数,输入一个链表的头节点,反转该链表并输出
反转后链表的头节点
"""
class ListNode:
def __init__(self, x):
self.val = x
self.next = None
class Solution:
def ReverseList(self, pHead):
pReverseHead = None
pNode = pHead
pPrev = None
while pNode != None:
pNext = pNode.next
if pNext == None:
pReverseHead = pNode
pNode.next = pPrev
pPrev = pNode
pNode = pNext
return pReverseHead
def ReverseListRec(self, pHead):
if not pHead or not pHead.next:
return pHead
else:
pReverseHead = self.ReverseList(pHead.next)
pHead.next.next = pHead
pHead.next = None
return pReverseHead
def ReverveList2(self, pHead):
if not pHead or not pHead.next:
return pHead
pPrev = None
while pHead:
pNext = pHead.next
pHead.next = pPrev
pPrev = pHead
pHead = pNext
return pPrev
剑指offer python版 24.反转链表
最新推荐文章于 2022-05-02 20:53:35 发布