码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 经典OJ题:链表中的倒数第K个节点


     

    题目:

    输入一个链表,输出该链表中倒数第k个结点。

    题源:链表中倒数第k个结点_牛客题霸_牛客网 (nowcoder.com) 

     

    方法一:暴力求解法

    • 可以线统计链表的节点个数,然后用链表节点的个数减去K,得出倒数第K个节点的前一个节点到头节点的节点个数。
    • 之后使用循环遍历,遍历到倒数第K个节点的前一个节点,随后输出下一个节点。
    • 而输出的下一个节点便是倒数第K个节点。

    方法二:快慢指针的长度差

    • 设立两个指针,fast、slow
    • 因为所求的是倒数第K个节点,所以这个节点到尾节点的距离是K
    • 所以利用这个K,进行一个距离差,也就是将fast和slow之间的距离变成K并且按照同样的速度向前运动,直到fast走到NULL
    • 当fast走到NULL的时候,也就表明了slow指向的节点就是倒数第K个节点。

     

     转化为代码,就是先让fast走到和头节点相差距离为K的节点位置,然后fast和slow同时向前移动一个节点的距离位置,直到fast==NULL

    注意还是需要进行K的判断!

    如果K大于链表长度,则再进行移动fast的距离时,fast就会被移动到NULL上 

  • 相关阅读:
    实验五 计数/定时器的设计【Verilog】
    js实现一个 bind 函数
    基于遗传算法的二进制图像重建(Matlab代码实现)
    遥感图像应用:在低分辨率图像上实现洪水损害检测
    认识RocketMQ4.x架构设计
    计算机毕业设计Java-ssmSUNHome家政服务管理平台源码+系统+数据库+lw文档
    【SpringCloudAlibaba】Seata分布式事务使用
    基于机器学习和深度学习的C-MAPSS涡扇发动机剩余寿命RUL预测(Python,Jupyter Notebook环境)
    Amazon Bedrock | 大语言模型CLAUDE 2体验
    使用docker-compose部署达梦DEM管理工具,mac m1系列适用
  • 原文地址:https://blog.csdn.net/2301_76445610/article/details/134277355
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号