力扣Hoot100-反转链表
LeetCode 刷题反转链表递归解法简洁优雅的 O (n) 实现反转链表是链表类最基础也最核心的面试题递归解法以「代码极简、逻辑优雅」著称是面试中展示递归思维的经典案例。本文详解反转链表的尾递归解法从思路到代码逐行拆解帮你彻底理解递归反转的核心逻辑。一、题目描述反转单链表给你单链表的头节点head请你反转链表并返回反转后的链表的头节点。示例输入1 - 2 - 3 - 4 - 5 - null输出5 - 4 - 3 - 2 - 1 - null链表节点定义java运行/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val val; } * ListNode(int val, ListNode next) { this.val val; this.next next; } * } */二、解题思路尾递归反转核心递归的核心是「拆解问题 终止条件」反转链表的尾递归思路可总结为问题拆解反转以cur为当前节点的链表等价于「先反转cur.next的链表再将cur的next指向前驱节点pre」终止条件当cur null时说明已遍历到链表末尾此时pre就是反转后的新头节点递归过程用temp暂存cur.next防止链表断裂将cur.next指向pre完成当前节点的反转再递归处理temp下一个节点和cur新的前驱节点。思路可视化以 1-2-3 为例plaintext初始cur1, prenull 1. 暂存 tempcur.next2 → cur.nextprenull → 递归处理(temp2, pre1) 2. 暂存 tempcur.next3 → cur.nextpre1 → 递归处理(temp3, pre2) 3. 暂存 tempcur.nextnull → cur.nextpre2 → 递归处理(tempnull, pre3) 4. curnull返回 pre3新头节点 最终链表3-2-1-null三、完整代码实现class Solution { // 主方法调用递归函数初始当前节点为head前驱节点为null public ListNode reverseList(ListNode head) { return reverse(head, null); } // 递归函数参数为当前节点cur、前驱节点pre public ListNode reverse(ListNode cur, ListNode pre) { // 终止条件cur为null返回pre反转后的新头节点 if (cur null) { return pre; } // 1. 暂存cur.next防止链表断裂 ListNode temp cur.next; // 2. 反转当前节点cur的next指向pre cur.next pre; // 3. 递归处理下一个节点temp前驱节点更新为cur return reverse(temp, cur); } }

相关新闻

第一个神经网络:用Keras构建手写数字识别模型

第一个神经网络:用Keras构建手写数字识别模型

背景/痛点在机器学习入门阶段,手写数字识别(MNIST数据集)是一个经典案例,但许多教程停留在简单的模型搭建层面,缺乏对实际工程问题的深入探讨。例如: 1. 数据预处理:如何高效归一化数据并处理维…

2026/7/7 15:38:25 阅读更多 →
苹果容器Apple container是做什么用的?

苹果容器Apple container是做什么用的?

探偈程男《新兴数据湖仓设计与实践手册从分层架构到数据湖仓架构设计(2025 年)》 系列文章将聚焦从数据仓库分层到数据湖仓架构的设计与实践。手册将阐述数据仓库分层的核心价值、常见分层类型,详解分层下的 ETL 架构及数据转换环节&#xff…

2026/7/5 11:53:30 阅读更多 →
曲线和曲面质量:G0、G1、G2、G3

曲线和曲面质量:G0、G1、G2、G3

G0、G1、G2、G3 是用于描述曲线或曲面连续性与平滑度的几何连续性标准,常用于曲面修补的质量评估。G0:点连续 定义:曲线无断点,曲面连接处无裂缝,但可能存在棱角。 判定:曲线连续但有尖角;曲面连…

2026/7/6 16:16:30 阅读更多 →

最新新闻

3分钟快速上手YaeAchievement:原神成就一键导出终极指南

3分钟快速上手YaeAchievement:原神成就一键导出终极指南

3分钟快速上手YaeAchievement:原神成就一键导出终极指南 【免费下载链接】YaeAchievement 更快、更准的原神数据导出工具 项目地址: https://gitcode.com/gh_mirrors/ya/YaeAchievement 在《原神》的广阔世界中,收集成就是每位旅行者不可或缺的乐…

2026/7/7 23:16:30 阅读更多 →
小红书作品下载终极指南:3步轻松获取无水印图文视频动态内容

小红书作品下载终极指南:3步轻松获取无水印图文视频动态内容

小红书作品下载终极指南:3步轻松获取无水印图文视频动态内容 【免费下载链接】XHS-Downloader 小红书(XiaoHongShu、RedNote)链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品、用户链…

2026/7/7 23:16:30 阅读更多 →
知识获取引擎:企业AI持续认知能力的基础设施

知识获取引擎:企业AI持续认知能力的基础设施

知识获取引擎:企业AI持续认知能力的基础设施作者:东塬一老翁摘要传统大语言模型的知识固化问题——知识在训练完成后即被“冻结”,新增知识依赖昂贵的重新训练或微调——已成为制约企业AI深度应用的瓶颈。本文提出并系统阐述WSaiOS模拟人工智能系统中的知…

2026/7/7 23:16:30 阅读更多 →
容器镜像仓库建设

容器镜像仓库建设

容器镜像仓库建设:云原生时代的软件供应链基石在云原生技术席卷全球的今天,容器已成为应用交付与部署的标准单元。而容器镜像仓库,作为镜像存储、分发与管理的核心枢纽,其重要性日益凸显。它不仅是技术基础设施的关键组件&#xf…

2026/7/7 23:16:30 阅读更多 →
LeetCode中的贪心与动态规划混合题

LeetCode中的贪心与动态规划混合题

在算法学习的进阶之路上,贪心算法与动态规划常被视为两种核心的解题范式。然而,LeetCode题库中有一类颇具挑战性的题目,它们并非单纯归属于某一类别,而是巧妙地将贪心的直觉与动态规划的严谨融为一体。这类“贪心与动态规划混合题…

2026/7/7 23:14:29 阅读更多 →
文件上传漏洞实战:从原理到企业级应用安全审计与防御

文件上传漏洞实战:从原理到企业级应用安全审计与防御

1. 项目概述:一次典型的企业级应用安全审计实战最近在梳理一些常见的物联网和车联网应用安全风险时,通天星CMSV6车载视频监控平台的文件上传漏洞引起了我的注意。这并非一个全新的漏洞,但它的复现过程非常经典,几乎涵盖了企业级应…

2026/7/7 23:12:28 阅读更多 →

日新闻

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

图片浏览是移动应用中最高频的场景之一。从社交应用的照片流到电商平台的商品图集,从旅游应用的景点相册到摄影作品展示——用户对图片浏览的体验要求不断提高:流畅的切换动画、直观的缩略图导航、便捷的收藏操作、自动播放模式。HarmonyOS NEXT ArkUI 虽…

2026/7/7 0:05:16 阅读更多 →
24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V稳压芯片完整选型指南 PW8600 PW75XX PW2815 PW2312B LDODC/DC全方案 一、24V稳压方案概述 24V直流电源在工业自动化、门禁系统、电梯控制、汽车电子、LED驱动、监控设备等场景中应用极广,是最常见的中压直流母线电压。要将24V母线稳定降压至下游MCU、传感器…

2026/7/7 0:05:16 阅读更多 →
RAG+知识图谱混合检索与Graph RAG核心对比

RAG+知识图谱混合检索与Graph RAG核心对比

做企业RAG落地的团队,往往容易卡在一容易踩坑的选型难题: 当需求单纯靠向量RAG搞不定、单纯靠知识图谱也搞不定,必须同时依赖「文本语义理解 实体关系推理」时,到底是做「向量图谱混合检索」就够了,还是必须上「Grap…

2026/7/7 0:07:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/7 14:24:45 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/7 12:34:47 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/7 15:59:06 阅读更多 →

月新闻