题目描述
输入一个链表,反转链表后,输出新链表的表头。
思路
为了防止链表断开,使用三个指针进行操作,分别指向当前节点、它的前一个节点、后一个节点
代码实现
# -*- coding:utf-8 -*-
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution:
# 返回ListNode
def ReverseList(self, pHead):
# write code here
if pHead==None or pHead.next==None:
return pHead
pPeversedHead=None
pNode=pHead
pPrev=None
while pNode!=None:
pNext=pNode.next
if pNext==None:
pPeversedHead=pNode
pNode.next=pPrev
pPrev=pNode
pNode=pNext
return pPeversedHead