LeetCode刷题-206.反转链表【递归实现】

206.反转链表

题目

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

示例

示例1

image-20240203144829347

输入:head = [1,2,3,4,5]
输出:[5,4,3,2,1]

示例2

image-20240203144900057

输入:head = [1,2]
输出:[2,1]

示例3

输入:head = []
输出:[]

提示

  • 链表中节点的数目范围是 [0, 5000]
  • -5000 <= Node.val <= 5000

**进阶:**链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题?

解答

  1. 递归的终止条件是当前节点或者下一个节点==null
  2. 在函数内部,改变节点的指向,也就是 head 的下一个节点指向 head 递归函数那句
  3. 返回新的节点

image-20240203145211543

image-20240203145223741

image-20240203145236202

image-20240203145259866

image-20240203145405591

使用递归解答(Java)

/*** 定义节点类*/
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class ListNode {int val;ListNode next;
}class Solution {/*** 反转链表* @param head 头节点* @return  反转后的头节点*/public ListNode reverseList(ListNode head) {// 使用递归(如果节点为空 那么返回null)if(head.next == null){return head;}// 创建新的节点(依次往下进行寻找 找到最后一个节点)ListNode newLinkedNode = reverseList(head.next);// 将最后一个节点的next指向当前节点head.next.next = head;// 将当前节点的next指向nullhead.next = null;// 返回新的节点return newLinkedNode;}@Test@DisplayName("测试-反转链表")public void test(){ListNode head = new ListNode(1,new ListNode(2,new ListNode(3,new ListNode(4,new ListNode(5,null)))));ListNode result = reverseList(head);System.out.println("result.toString() = " + result.toString());}
}

image-20240203145520398

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/719645.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙开发就业前景以及发展方向分析~

鸿蒙操作系统作为华为公司自主研发的操作系统&#xff0c;已经成为当下炙手可热的话题。作为一个全新的操作系统&#xff0c;鸿蒙开发为IT行业带来了巨大的就业机会。本文将围绕鸿蒙开发的就业前景以及发展方向展开讨论。 一、鸿蒙开发就业前景 随着鸿蒙操作系统的发布&#…

python实现有限域GF(2^8)上的乘法运算

有限域GF(2^8)上的乘法运算可以看成多项式的乘法 5e转换成二进制为0101 1110&#xff0c;对应的多项式为x^6x^4x^3x^2x 3f转换成二进制为0011 1111&#xff0c;对应的多项式为x^5x^4x^3x^2x1 将这两个多项式相乘再模多项式x^8x^4x^3x1得到结果为1110 0101&#xff0c;转换为…

latex编译生成的pdf文件,图片出现浅色的线

目录 问题描述&#xff1a; 解决办法&#xff1a; 问题描述&#xff1a; 在overleaf中&#xff0c;导入图片&#xff0c;编译之后&#xff0c;不知道为什么会出现一条浅色的线&#xff0c;很影响视觉效果&#xff08;ps:在浏览器中看不到这条线&#xff0c;但是在pdf阅读器中…

分巧克力 刷题笔记

/* 分巧克力 解题思路 二分 直接检查看答案是否符合题目条件 对于一块边长分别为x 和y的巧克力\\ 假设我们输入检查的数为k 其能分割成的 k*k 的巧克力的块数为 (x/k)*(y/k) 因为c里面的除法是下取整的所以我们不用考虑奇偶数 是否能整除 将每一块巧克力能分成的k*k的巧克力…

管家婆订货易在线商城 VshopProcess 任意文件上传漏洞复现

0x01 产品简介 管家婆订货易,帮助传统企业构建专属的订货平台,PC+微信+APP+小程序+h5商城5网合一,无缝对接线下的管家婆ERP系统,让用户订货更高效。支持业务员代客下单,支持多级推客分销,以客带客,拓展渠道。让企业的生意更轻松。 0x02 漏洞概述 管家婆订货易在线商城…

Matlab 机器人工具箱 符合动力学

文章目录 1 符合化表示1.1 标准DH动力学1.2 改进DH动力学 质量集中在质心1.2 改进DH动力学 质量集中在末端1.3 程序问题1.3.1 Unable to perform assignment because value of type sym is not convertible to double.1.3.2 CAT arguments dimensions not consistent.参考链接1…

一篇了解电阻的使用

目录 一、电阻理论基础 1.电阻的定义 2.欧姆定律 3.电阻决定式 4.电阻的串并联​编辑 5.电阻的功率 6.温度对电阻的影响 二、电阻的选型 1.安装方式 2.电阻值 &#xff08;1&#xff09;电阻值的标称 &#xff08;2&#xff09;电阻值的确定 &#xff08;3&#x…

石头里的传奇故事—沉积岩

“ 沉积岩者&#xff0c;地质历史之积淀者也。” 野外发现层状延伸的岩石出露&#xff0c;发现的岩石呈现灰白色&#xff0c;主要矿物为磨圆度好的石英颗粒&#xff0c;石英粒径为1-2mm。岩石质地坚硬。石英颗粒间填充物黏土物质&#xff0c;滴加盐酸未见气泡&#xff0c;斜层…

springboot242基于SpringBoot的失物招领平台的设计与实现

失物招领平台 摘 要 科学技术的不断发展&#xff0c;计算机的应用日渐成熟&#xff0c;其强大的功能给人们留下深刻的印象&#xff0c;它已经应用到了人类社会的各个层次的领域&#xff0c;发挥着重要的不可替换的作用。信息管理作为计算机应用的一部分&#xff0c;使用计算机…

C++ 之LeetCode刷题记录(三十七)

&#x1f604;&#x1f60a;&#x1f606;&#x1f603;&#x1f604;&#x1f60a;&#x1f606;&#x1f603; 开始cpp刷题之旅。 目标&#xff1a;执行用时击败90%以上使用 C 的用户。 17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表…

OceanPen Art AI绘画系统内容讲解

在一个崇高的目标支持下&#xff0c;不停地工作&#xff0c;即使慢&#xff0c;也一定会获得成功。 —— 爱因斯坦 演示站点&#xff1a; ai.oceanpen.art官方论坛&#xff1a; www.jingyuai.com &#x1f4a1;技术栈 前端&#xff1a;VUE3后端&#xff1a;Java数据&#xf…

【硬件相关】SMART硬盘健康状态监测

文章目录 一、前言1、SMART技术介绍2、SMART功能作用3、SMART运行原理 二、部署实践1、SMART软件安装2、SMART操作命令2.1、状态查询2.2、健康测试 3、SMART信息解读 三、异常预测 一、前言 Wikipedia&#xff1a; Self-Monitoring,_Analysis_and_Reporting_Technology 1、SMAR…

5G网络架构与组网部署01--5G网络架构的演进趋势

目录 1. 5G网络架构的演进趋势 1.1 5G移动通信系统整体架构 1.2 4G移动通信系统整体架构 1.3 4G与5G移动通信系统整体架构对比 1.4 核心网架构演进 1.5 无线接入网演进 1. 整体架构组成&#xff1a;接入网&#xff0c;核心网 2. 5G网络接入网和核心网对应的网元&#xff…

es集群的详细搭建过程

目录 一、VM配置二、集群搭建三、集群配置 一、VM配置 VM的安装 VMware Workstation 15 Pro的安装与破解 VM新建虚拟机 VM新建虚拟机 二、集群搭建 打开新建好的服务器&#xff0c;node1&#xff0c;使用xshell远程连接 下载es&#xff1a;https://www.elastic.co/cn/down…

内网穿透的应用-如何修改Nginx服务location代理转发规则结合cpolar实现无公网ip环境访问内网站点

文章目录 1. 下载windows版Nginx2. 配置Nginx3. 测试局域网访问4. cpolar内网穿透5. 测试公网访问6. 配置固定二级子域名7. 测试访问公网固定二级子域名 1. 下载windows版Nginx 进入官方网站(http://nginx.org/en/download.html)下载windows版的nginx 下载好后解压进入nginx目…

【S32DS报错】-5-提示Secure Debug might be enabled on this device错误

【S32K3_MCAL从入门到精通】合集&#xff1a; S32K3_MCAL从入门到精通https://blog.csdn.net/qfmzhu/category_12519033.html 问题背景&#xff1a; 在S32DS IDE中使用PEmicro&#xff08;Multilink ACP&#xff0c;Multilink Universal&#xff0c;Multilink FX&#xff09…

自适应控制算法讲解-案例(附C代码)

目录 一、自适应控制算法的基本原理 二、自适应控制算法分类 三、案例 3.1自适应PID控制 1&#xff09; 模型识别 2&#xff09;动态调整PID参数逻辑 3&#xff09;PID控制器 自适应控制算法是一种高级控制算法&#xff0c;用于处理那些参数不确定或者动态变化的系统。这类…

SwiftUI 在 App 中弹出全局消息横幅(下)

功能需求 在 SwiftUI 开发的 App 界面中,有时我们需要在全局层面向用户展示一些消息: 如上图所示:我们弹出的全局消息横幅位于所有视图之上,这意味这它不会被任何东西所遮挡;而且用户可以点击该横幅关闭它。这是怎么做到的呢? 在本篇博文中,您将学到以下内容 功能需求…

iOS-设置指定边圆角(左上、左下等)

以UILabel举例&#xff0c;效果图如下&#xff1a; 方法一仅支持iOS11以上 方法一&#xff1a; [_sleepStateLabel.layer setMasksToBounds:YES]; [_sleepStateLabel.layer setCornerRadius:12]; [_sleepStateLabel.layer setMaskedCorners:kCALayerMinXMinYCorner | kCALaye…

个人项目介绍3:火车站篇

项目需求&#xff1a; 一比一精确显示火车站主建筑和站台模型。实时响应车辆信息&#xff08;上水&#xff0c;吸污&#xff0c;换乘&#xff09;并同步显示&#xff0c;实时响应车辆进出站信息&#xff0c;并以动画形式模拟。实时响应报警信息&#xff0c;并能在三位中显示&a…