示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
解题思路:
先用tmp保存Head的下一个节点的信息,保证单链表不会因为失去Head节点的next而就此断裂,保存完next,就可以让Head的next指向last了,让last,pHead依次向后移动一个节点,继续下一次的指针反转。
代码:
class Solution:
def reverseList(self, head: ListNode) -> ListNode:
if head == None:
return head
last = None
while head:
tmp = head.next
head.next = last
last = head
head = tmp
return last
网友评论