欢乐力扣:反转链表

文章目录


1、题目描述

反转链表

给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

2、思路

借助cur指针和pre双指针来调整链表的前后指向。

python 复制代码
# 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]:
        # 反转链表
        cur = head 
        pre = None 
        while cur:
            tmp = cur.next   # step2: 考虑到先存储后续节点
            cur.next = pre   # step1: 关键:修改指向
            pre = cur        # step3: 在cur变更之前,你得先调整pre的节点
            cur = tmp        # step4: 将tmp更新cur节点
        return pre           # 此时cur已经指向了None 
相关推荐
Rock_yzh1 小时前
LeetCode算法刷题——128. 最长连续序列
数据结构·c++·算法·哈希算法
WolfGang0073211 小时前
代码随想录算法训练营Day32 | 518.零钱兑换II、377. 组合总和 Ⅳ、70. 爬楼梯(进阶)
算法
2501_941623327 小时前
智慧农业监控平台中的多语言语法引擎与实时决策实践
leetcode
轻抚酸~8 小时前
KNN(K近邻算法)-python实现
python·算法·近邻算法
Yue丶越10 小时前
【C语言】字符函数和字符串函数
c语言·开发语言·算法
小白程序员成长日记10 小时前
2025.11.24 力扣每日一题
算法·leetcode·职场和发展
有一个好名字10 小时前
LeetCode跳跃游戏:思路与题解全解析
算法·leetcode·游戏
AndrewHZ11 小时前
【图像处理基石】如何在图像中提取出基本形状,比如圆形,椭圆,方形等等?
图像处理·python·算法·计算机视觉·cv·形状提取
蓝牙先生12 小时前
简易TCP C/S通信
c语言·tcp/ip·算法
2501_9418705612 小时前
Python在高并发微服务数据同步与分布式事务处理中的实践与优化
leetcode