反转链表 牛客网 剑指Offer
- 题目描述
- 输入一个链表,反转链表后,输出新链表的表头。
# -*- coding:utf-8 -*-
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution:
#run:21ms memory:5728k
def ReverseList2(self, pHead):
pPrev = None
while pHead != None:
pNext = pHead.next
pHead.next = pPrev
pPrev = pHead
pHead = pNext
return pPrev
#run:29ms memory:5628k
def ReverseList(self, pHead):
pReversedHead = None
pNode = pHead
pPrev = None
while pNode != None:
pNext = pNode.next
if pNext == None:
pReversedHead = pNode
pNode.next = pPrev
pPrev = pNode
pNode = pNext
return pReversedHead