基础算法【解题思路】:单链表的倒数第k个节点

定义指针p1,让p1走k步:
在这里插入图片描述

定义指针p2,在p1走了k步的时候,p2也跟着走。
在这里插入图片描述

p1走到最后的时候走了n-k步,停留在最后的null结点。
P2从头结点开始,也跟着走到了n-k步,而n-k恰好是倒数第k个节点。

例子:
在这里插入图片描述

实现:

// 返回链表的倒数第 k 个节点
static ListNode findFromEnd(ListNode head, int k) {
    ListNode p1 = head,//第一个指针
            p2 = head;//第二个指针
    for (int i = 0; i < k; i++) {
        p1 = p1.next;
    }


    while (p1 != null){
        p1 = p1.next;
        p2 = p2.next;
    }
    return p2;
}

参考

labuladong

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Axure高保真原型】日期天数加减计算器

今天和大家分享日期天数加减计算器的原型模板&#xff0c;我们通过这个模板选择指定日期&#xff0c;然后填写需要增加或者减少的天数&#xff0c;点击确认按钮后&#xff0c;就可以计算出对应的结束日期&#xff0c;本案例提供中继器版的日期选择器&#xff0c;以及JS版的日期…

mybatisPlus 将List<String>字段转成json字符串,使用JacksonTypeHandler以及自定义类型处理器实现

文章目录 场景使用JacksonTypeHandler实现类型转换自定义StringListTypeHandler处理器实现 场景 项目中经常需要将List转成json存储到配置文件中, mybatisPlus默认实现了JacksonTypeHandler&#xff0c;GsonTypeHandler&#xff0c;FastjsonTypeHandler&#xff0c;也可以自定义…

@Transactional注解的一个很容易被忽略的错误用法

Transactional注解的一个很容易被忽略的错误用法 今日审查代码时发现对Transactional注解的一个如下用法&#xff1a; //StockController.javaAutoWired private StockService stockService//商品出库 PostMapping("/product/stock/out-stock") public Boolean pro…

利用 hexo 搭建 github page

默认我们已经安装了 node.js git 点击就可以下载啦 然后我们在本地新建一个文件夹&#xff0c;我取的名字是Hexo_blog 然后在命令行处输入 或者 右键 点击 git bash here npm install -g hexo-cli 下一步进行Hexo 初始化和本地预览 初始化并安装所需组件&#xff1a; hexo in…

【Linux驱动】Pinctrl子系统 | GPIO子系统 | 基于子系统的LED驱动程序

&#x1f431;作者&#xff1a;一只大喵咪1201 &#x1f431;专栏&#xff1a;《Linux驱动》 &#x1f525;格言&#xff1a;你只管努力&#xff0c;剩下的交给时间&#xff01; 目录 &#x1f6f7;Pinctrl子系统&#x1f945;设备树中的Pinctrl子系统 &#x1f6f7;GPIO子系统…

【漏洞复现】Hikvision SPON IP网络对讲广播系统任意文件上传

漏洞描述 IP网络对讲广播系统是一种基于IP网络的高效、可靠、智能的通信解决方案。它支持全双工语音通信、单呼/多呼、组呼/广播等多种通信模式,可以实现跨地域、跨网络的实时通讯。该系统具有灵活的群组管理、智能化的调度和优先级控制功能,可以满足各种场景下的紧急通讯和…

海外動態IP代理地址在網路連接中的作用

海外動態IP代理地址在確保更安全的流覽體驗方面發揮著重要作用&#xff0c;因為線上隱私和安全是最重要的問題。代理地址充當用戶設備和互聯網之間的仲介&#xff0c;提供多種好處&#xff0c;例如增強隱私、訪問地理限制內容以及提高網路性能等。 本文我們將深入探討一下海外…

如何用UE5 的小白人替换成自己的 metahumen 数字人

1、用QuixelBridge 插件导入制作好的metahumen数字人 2、创建项目时如有选择第三人称游戏&#xff0c;在内容目录中找到第三人称游戏小白人的蓝图类&#xff0c;对其进行复制一个&#xff0c;重命名&#xff0c;我这里命名为BP_METAHUMEN&#xff0c; 并移到Metahumen目录下方便…

番外篇-Julius AI帮你做数据分析

今天咱们聊聊如何利用AI大模型来做数据分析&#xff0c;非常适合小白体验&#xff0c;尤其是缺乏项目经验的同学&#xff0c;强烈建议关注收藏&#xff0c;也欢迎私信交流~ 1. 站在巨人肩膀 在数据分析领域&#xff0c;AI技术的飞速发展正引领一场革命。随着大型机器学习模型…

C++设计模式 --1.工厂模式和单例模式

文章目录 1.工厂模式简单工厂模式工厂方法模式抽象工厂模式 2.单例模式懒汉式饿汉式 1.工厂模式 简单工厂模式 抽象产品类 //定义一个抽象水果类 --抽象产品角色 class AbstractFruit { public:virtual void showFruitName()0;//抽取出产品的公共行为&#xff0c; 纯虚函数v…

轻量级VS Code运行HTML代码不是难事,这里提供几个方法

对于那些刚开始编码的人来说,Visual Studio Code(VS Code)是更大、更复杂的代码编辑器的一个很好的替代品。特别是对于网络开发人员来说,它提供了许多编写和调整HTML部分的机会,加上大量的功能,使开发成为一次激动人心的旅程。 但是,如果你是开发界的新手,那么你究竟是…

Vue3-37-路由-组件内的路由守卫 onBeforeRouteLeave 和 onBeforeRouteUpdate

简介 组件内的路由守卫&#xff0c;实际上就是两个 API 方法。 他们与普通的守卫不同的是 &#xff1a; 他们是写在组件内的&#xff0c;在组件中监听路由的变化&#xff0c;不是全局的&#xff0c;比较灵活。 以下是两个 API 的功能说明&#xff1a;onBeforeRouteLeave() : 守…

SpringBoot项目如何防止反编译?

SpringBoot项目如何防止反编译&#xff1f; 场景方案项目操作启动方式反编译效果绑定机器启动 场景 最近项目要求部署到其他公司的服务器上&#xff0c;但是又不想将源码泄露出去。要求对正式环境的启动包进行安全性处理&#xff0c;防止客户直接通过反编译工具将代码反编译出…

x-cmd pkg | busybox - 嵌入式 Linux 的瑞士军刀

目录 简介首次用户功能特点竞品和相关作品 进一步阅读 简介 busybox 是一个开源的轻量级工具集合&#xff0c;集成了一批最常用 Unix 工具命令&#xff0c;只需要几 MB 大小就能覆盖绝大多数用户在 Linux 的使用&#xff0c;能在多款 POSIX 环境的操作系统&#xff08;如 Linu…

二叉树题目:好叶子结点对的数量

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法代码复杂度分析 题目 标题和出处 标题&#xff1a;好叶子结点对的数量 出处&#xff1a;1530. 好叶子结点对的数量 难度 6 级 题目描述 要求 给定二叉树的根结点 root \texttt{root} root 和整数 …

LIN总线与CAN总线的传输方式有什么不同?

​ 关注菲益科公众号—>对话窗口发送 “CANoe ”或“INCA”&#xff0c;即可获得canoe入门到精通电子书和INCA软件安装包&#xff08;不带授权码&#xff09;下载地址。 LIN&#xff0c;Interconnect Network&#xff0c;适用于速度和可靠性要求不高、低成本的场合&#xff…

TS 36.211 V12.0.0-通用功能

本文的内容主要涉及TS 36.211&#xff0c;版本是C00&#xff0c;也就是V12.0.0。

【cmu15445c++入门】(2)c++中的std::move() 左值引用右值引用

左值右值 要理解move语义&#xff0c;必须理解左值和右值的概念。左值的简化定义是左值是对象&#xff0c;指向内存中某个位置。右值是左值之外的任何。 std::move() move语义&#xff0c;在C中是一个有用的方法&#xff0c;它允许在对象之间高效和优化地转移数据所有权。m…

计算机创新协会冬令营——暴力枚举题目06

我给大家第一阶段的最后一道题就到这里了&#xff0c;下次得过段时间了。所以这道题简单一点。但是足够经典 下述题目描述和示例均来自力扣&#xff1a;两数之和 题目描述 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target …

基于SpringBoot微信小程序的宠物美容预约系统设计与实现

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行交流合作✌ 主要内容&#xff1a;SpringBoot、Vue、SSM、HLM…