链接

https://leetcode-cn.com/problems/lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof/

耗时

解题:7 min
题解:3 min

题意

输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。

思路

快慢指针,快指针先向后移动 k 次,然后快慢指针同时移动,当快指针到达链表末尾的空节点时,慢指针正好指向倒数第 k 个节点。

时间复杂度:O(n)O(n)O(n)

AC代码

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {public:ListNode* getKthFromEnd(ListNode* head, int k) {ListNode* fast = head;ListNode* slow = head;for(int i = 0; i < k; ++i) {fast = fast->next;}while(fast != NULL) {fast = fast->next;slow = slow->next; }return slow;}
};

【leetcode】剑指 Offer 22. 链表中倒数第k个节点(lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof)(双指针)[简单]相关推荐

  1. leetcode 剑指 Offer 22. 链表中倒数第k个节点

    题目描述: 输入一个链表,输出该链表中倒数第k个节点.为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点. 例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1.2.3 ...

  2. 【LeetCode】剑指 Offer 22. 链表中倒数第k个节点

    [LeetCode]剑指 Offer 22. 链表中倒数第k个节点 文章目录 [LeetCode]剑指 Offer 22. 链表中倒数第k个节点 一.遍历 二.双指针 总结 一.遍历 先遍历统计链表长 ...

  3. 【每日一题】剑指 Offer 22. 链表中倒数第k个节点

    剑指 Offer 22. 链表中倒数第k个节点

  4. 力扣—— 19. 删除链表的倒数第 N 个结点(java)、剑指 Offer 22. 链表中倒数第k个节点(java)

    19. 删除链表的倒数第 N 个结点(java) 一.题目描述 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点. 进阶:你能尝试使用一趟扫描实现吗? 输入:head = [1,2,3 ...

  5. 剑指offer——22.链表中倒数第k个节点

    题目: 输入一个链表,输出该链表中倒数第k个结点. 知识点: 注意这种想法:找倒数第几个.中间的数或三分之一的数这种题,可以利用两个指针,通过指针移动的不同方式来实现 注意: 还是考虑的情况要周全,此 ...

  6. 剑指 Offer 22. 链表中倒数第k个节点(C语言)

    输入一个链表,输出该链表中倒数第k个节点.为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点. 例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1.2.3.4.5.6 ...

  7. 【双100%解法】剑指 Offer 22. 链表中倒数第k个节点

    立志用最少的代码做最高效的表达 输入一个链表,输出该链表中倒数第k个节点.为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点. 例如,一个链表有 6 个节点,从头节点开始,它们的 ...

  8. 【算法】剑指 Offer 22. 链表中倒数第k个节点

    1.概述 输入一个链表,输出该链表中倒数第k个节点.为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点. 例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1.2.3. ...

  9. 剑指 Offer 22. 链表中倒数第k个节点

    双指针,间隔k-1,当前面的指针到最后一个节点时,输出后面的指针. class Solution {public ListNode getKthFromEnd(ListNode head, int k ...

  10. LeetCode-剑指 Offer 22. 链表中倒数第k个节点

    剑指 Offer 22. 链表中倒数第k个节点 思路一:利用快慢双指针 /*** Definition for singly-linked list.* struct ListNode {* int ...

最新文章

  1. 【Qt】QMainWindow最大化按钮是灰色(不能最大化)的解决方法
  2. R语言使用car包的influencePlot函数将回归分析中的离群点(outlier)、杠杆(leverage)和影响(influence)的信息组合成一个高度信息量丰富的合成图
  3. ubuntu adb
  4. 国外流行十大PHP框架
  5. 《Node.js 入门系列》—— 一些简单的排错方法(一)
  6. 【POJ - 2762】Going from u to v or from v to u?(Tarjan缩点,树形dp 或 拓扑排序,欧拉图相关)
  7. 天池 在线编程 最小振幅(排序)
  8. 服务器任务栏不显示程序,Win10任务栏不显示应用程序标签怎么办?
  9. eclipse java的jvm匹配_eclipse设置jvm
  10. 深度学习笔记(3) 向量化逻辑回归
  11. 国内首家,快手上线千万级QPS QUIC集群
  12. [翻译]The Data Access Application Block
  13. 获取位置_原神蜥蜴尾巴怎么获得 蜥蜴尾巴获取位置分享
  14. 翻译: 构建基于卡尔曼滤波器的 IMU 用速度数据改进 IMU 姿态估计
  15. Linux 系统镜像打包流程
  16. 华硕笔记本 FX50J Fn热键无效
  17. 第十三届“恩智浦”杯全国大学生智能汽车竞赛-信标对抗组比赛总结
  18. 【详细教程】阿里云ECS服务器搭建
  19. halcon计算一条弯曲线的回归直线
  20. tplink 文件服务器,tplink云服务器

热门文章

  1. matlab解方java_Java:调用window的matlab遇到的问题和解决方案
  2. repost 从APP工厂到游戏工厂?字节跳动进攻腾讯腹地
  3. 贪吃蛇_C语言_VS2019
  4. ArcGIS | 02小技巧-三调地类转换
  5. mac-Pro13 电池图标一直保持充电状态的问题解决
  6. Redis Cluster集群
  7. win2008 有几个版本?区别是什么?
  8. WIN2003序列号
  9. python- panabit添加黑白名单
  10. Apache安装apr和apr-util作用