题目描述
输入一个链表,反转链表后,输出新链表的表头。
思路
- 创建一个结点pre用来保存当前结点的前结点
- 先将当前结点的下一个结点保存起来,以免断链时找不到后续的结点
- 当前结点与下一个结点断开,回指前一个结点
- 前一个结点后移,当前结点后移
代码
class Solution:
# 返回ListNode
def ReverseList(self, pHead):
# write code here
pre = None
cur = pHead
while cur:
temp = cur.next
cur.next = pre
pre = cur
cur = temp
return pre