题目
输入一个链表,反转链表后,输出新链表的表头
思路
1.将现有的头换成尾,尾部的next为空
2.将从第二个node开始,循环将next指向前一个
3.需要一直有一个指针指向还没有翻转的链表的头部
解答
class ListNode:
def __init__(self, x):
self.val = x
self.next = None
class Solution:
def ReverseList(self, pHead):
if pHead == None:
return None
if pHead.next == None:
return pHead
pre = pHead
cur = pHead.next
n = cur.next
pre.next = None
while n != None:
cur.next = pre
pre = cur
cur = n
n = n.next
cur.next = pre
return cur.val
1396

被折叠的 条评论
为什么被折叠?



