【力扣100】206.反转链表

添加链接描述

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:
    def reverseList(self, head: Optional[ListNode]) -> Optional[ListNode]:
        pre=None
        cur=head
        while cur:
            temp=cur.next
            cur.next=pre
            pre=cur
            cur=temp
        return pre

思路:

  1. 定义两个指针,指向前一个节点和当前节点,同时还需要一个指向下一个的临时指针保存元素
  2. 结束条件是:cur变为空,此时pre就是链表开头

你可能感兴趣的:(leetcode,链表,算法)