反转一个单链表。
示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
分析
整个链表反转
方法
需要两个指针,一个当前位置指针,一个前面位置指针
代码实现
利用python的多元赋值,元赋值的时候,右边的值不会随着赋值而改变
class Solution(object):
def reverseList(self, head):
"""
:type head: ListNode
:rtype: ListNode
"""
cur,prev = head,None
while cur:
cur.next,prev,cur = prev,cur,cur.next
return prev