题目链接:https://leetcode.cn/problems/reverse-linked-list/
核心方法:双指针
定义一个cur指针,指向头节点,pre指针,初始化为None,代表cur指针的前一个节点
先用temp临时指针保存cur.next,为了向后移动指针
class Solution:
def reverseList(self, head: Optional[ListNode]) -> Optional[ListNode]:
cur = head
pre = None
while cur:
temp = cur.next
# 改变指针 指向前一个
cur.next = pre
# 向后移动
pre = cur
cur = temp
return pre