首页 > 试题广场 >

链表中倒数第k个结点

[编程题]链表中倒数第k个结点
  • 热度指数:1294185 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
输入一个链表,输出该链表中倒数第k个结点。
示例1

输入

1,{1,2,3,4,5}

输出

{5}

说明:本题目包含复杂数据结构ListNode,点此查看相关信息
头像 牛客题解官
发表于 2020-05-29 15:12:08
精华题解 描述 这是一篇针对初学者的题解。用2种方法解决。知识点:链表,链表的快慢指针难度:一星 题解 方法一:普通解法 很显然,求倒数第k个,可以转换成求正数第多少个呢?看个例子:假设有5个节点,序号1表示第1个节点,假设求倒数第K个,那么正数就应该是从头结点开始往后推(n-k)个,n自然代表所有节点的个 展开全文
头像 把牛妹带回家
发表于 2019-07-26 15:51:09
快慢指针 快指针先往前走k步,注意判断边界,然后快慢一起走,当快指针为none的时候,慢指针走到了倒数第k个节点 class Solution: def FindKthToTail(self, head, k): # write code here slow, 展开全文
头像 oweny
发表于 2019-09-04 16:35:22
/* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class Solution { 展开全文
头像 南宫雨雪
发表于 2020-01-27 21:37:34
问题分析:倒数第k个,就是正向的n(链表的长度)-k-1 代码如下:
头像 Janebook2019
发表于 2019-08-13 21:20:10
推荐方法链接:https://www.nowcoder.com/questionTerminal/529d3ae5a407492994ad2a246518148a?f=discussion > public ListNode FindKthToTail(ListNode head,int k 展开全文
头像 心谭
发表于 2020-01-12 00:35:14
【数值的整次方】【2种解法】【剑指offer】 题目描述 输入一个链表,输出该链表中倒数第 k 个结点。 🔍 关注公众号“心谭博客” / 👉 前往 xxoo521.com 查看更多前端与算法的系列文章,获得更好阅读体验 解法 1: 两次循环 因为要求链表倒数第 k 个节点,也就是求正数第le 展开全文
头像 云小逸0987
发表于 2022-10-01 20:28:28
在本篇文章里,我将分享一道很经典的算法题———链表中倒数第k个结点,并且分享解题思路,希望可以帮助到你😀😀😀 以下代码均经过牛客测试,均正确,请放心测试😊😊😊 解题思路: 这是一道经典的快慢指针问题,设置一对快慢 展开全文
头像 一叶浮尘
发表于 2020-03-22 20:00:54
输入一个链表,输出该链表中倒数第k个结点。 仅仅用一个指针进行遍历注定是没有办法很优美地实现此问题解答的,所以要用两个指针,这两个指针的位置相差k-1个距离,当快指针走到最后一个节点的时候,慢指针指向的位置就是我们要的倒数第k个节点了。思想就是这么简单了,很多链表类的题目都是活用指针就可以解决的, 展开全文
头像 法拉利201903231900848
发表于 2019-08-30 01:38:02
# -*- coding:utf-8 -*- # class ListNode: #     def __init__(self, x): #   & 展开全文
头像 jalr4ever
发表于 2019-08-25 22:32:12
剑指 - 链表中倒数第k个结点 题目 输入一个链表,输出该链表中倒数第k个结点。 思路 两种方案,不过空间复杂度都为 O(n),可以考虑一种计数后再次遍历,空间复杂度 O(1),但写起来比较麻烦,这里就记录比较容易实现和理解的两种方案了 public class LinkListKthNode { 展开全文
头像 倚天拔地
发表于 2020-04-14 18:07:52
程序特点:利用了try catch语句处理了输入的链表长度小于k的情况,并且这样避免了if语句。 public class Solution { public ListNode FindKthToTail(ListNode head,int k) { ListNode ele 展开全文