''' 解题思路: while循环中引入两个中间变量pre,next存储当前节点的前一个节点和下一个节点初始值为None ''' # -*- 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 pre = None # 前一个节点(None初始化) next = None # 下一个节点(None初始化) while pHead != None: next = pHead.next # 先保存下一个节点 pHead.next = pre # 下一个节点指向前一个节点(反转链表) pre = pHead # 前一个节点更新(用于下一个循环使用) pHead = next # 用下一个节点替代当前节点(触发下一步循环) return pre