2020-06-20

1.题目描述

难度简单46收藏分享切换为英文关注反馈输入一个链表,输出该链表中倒数第k个节点。为了符合大多数
人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点
开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。

2.题解

1.首先统计链表的长度cnt,然后得到正数第cnt-k+1个即可
2.双指针法

3.代码

class Solution {public:ListNode* getKthFromEnd(ListNode* head, int k) {int cnt=0;ListNode* p=head;while (p){p=p->next;cnt++;}if (k>cnt) return NULL;int i=1;p=head;while (p){if (i==cnt-k+1) break;i++;p=p->next;}return p;}
};
class Solution {public:ListNode* getKthFromEnd(ListNode* head, int k) {if (!head) return NULL;ListNode *p=head;int cnt=1;while (p&&cnt<k){p=p->next;cnt++;}if (!p) return NULL;ListNode *q=head;while (p->next){p=p->next;q=q->next;}return q;}
};

22. 链表中倒数第k个节点相关推荐

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

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

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

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

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

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

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

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

  5. 22 链表中倒数第k个节点

    22 链表中倒数第k个节点 为了实现只遍历一次就能找到倒数第kkk个节点,我们可以定义两个指针.第一个指针从链表的头指针开始遍历向前走k−1k-1k−1步,第二个指针保持不动:从第kkk步开始,第二个 ...

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

    剑指 Offer 22. 链表中倒数第k个节点 环形队列,顺序查找 (还可以使用双指针进一步优化内存) public class SolutionJz22 {public class ListNode ...

  7. 剑指offer:面试题22. 链表中倒数第k个节点

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

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

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

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

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

  10. 剑指Offer - 面试题22. 链表中倒数第k个节点(快慢指针)

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

最新文章

  1. numpy.random.seed()
  2. java 操作 ldap_JAVA操作LDAP总结
  3. 我的团队[六]———功夫在诗外
  4. 【云栖大会】阿里妈妈:数字营销“智”变
  5. Python 网页爬虫 文本处理 科学计算 机器学习 数据挖掘兵器谱 - 数客
  6. 房屋建筑结构安全自动在线监测系统解决方案
  7. 项目建议书模板doc_简历模板大全,直接可以下载使用的简历模板
  8. 【Vue实战】汽车品牌列表表格实现(添加、删除功能)
  9. 基于C++实现银行业务系统
  10. 流程图、框图、UML图、类图
  11. js 中国时间转换美国太平洋标准时间
  12. 用python计算圆周率Π
  13. 黑苹果显卡加速_黑苹果AMD RX5700XT定制FBname 提升显卡性能
  14. App隐私合规协议(第三方SDK)说明
  15. 谷歌地球的高清卫星影像数据都来源自哪里?用户如何下载谷歌影像?
  16. DDK for windows
  17. JVM 运行时内存空间详解——元空间
  18. ThinkPHP最新版支付宝接口开…
  19. ucgui界面设计示例2
  20. SQL错误(1366):Incorrect String Value

热门文章

  1. 卷积神经网络CNN(3)—— FCN(Fully Convolutional Networks)要点解释
  2. 20W+喜爱的Pathview网页版 | 整合表达谱数据KEGG通路可视化
  3. 如何解决pd16虚拟机 mac 联网失败问题?pd16 m1芯片版网络初始化失败问题!
  4. 让你的Mac读给你听,还能听写,用来练习英语口语!
  5. 适合新手使用的编辑制作管理软件:Substance Alchemist Mac版
  6. 云鹊医认证审核需要多久_ISO9001质量管理体系认证审核需要准备哪些资料
  7. 魅蓝3 官方android系统,魅蓝3获取ROOT权限及刷入Android系统过程
  8. 树莓派 | threading01 - 创建两个子线程同时运行,两个线程各负责控制一个LED灯以不同的频率闪烁
  9. python ssd目标检测_解读目标检测之SSD:Single Shot MultiBox Detector
  10. dedecms二次开发常用代码