Leetcode刷题100天—剑指 Offer 22. 链表中倒数第k个节点(链表)—day26
Posted 神的孩子都在歌唱
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode刷题100天—剑指 Offer 22. 链表中倒数第k个节点(链表)—day26相关的知识,希望对你有一定的参考价值。
前言:
作者:神的孩子在歌唱
大家好,我叫运智
剑指 Offer 22. 链表中倒数第k个节点
难度简单259收藏分享切换为英文接收动态反馈
输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。
例如,一个链表有 6
个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6
。这个链表的倒数第 3
个节点是值为 4
的节点。
示例:
给定一个链表: 1->2->3->4->5, 和 k = 2.
返回链表 4->5.
package 链表;
public class 剑指Offer_22_链表中倒数第k个节点 {
// 使用顺序查找,假设链表长度是n,第k个节电就是链表的第n-k个节电
public ListNode getKthFromEnd(ListNode head, int k) {
// 定义一个指针,指向头节点
ListNode node=head;
int n=0;
// 通过for循环获取链表长度
for(;node!=null;node=node.next) {
n++;
}
// 在for循环遍历一遍
// 只要我们指针指向第k个元素后的节点,那么就可以直接返回
for(node=head;n>k;n--) {
node=node.next;
}
// 返回第k个元素后的节点
return node;
}
}
本人csdn博客:https://blog.csdn.net/weixin_46654114
转载说明:跟我说明,务必注明来源,附带本人博客连接。
以上是关于Leetcode刷题100天—剑指 Offer 22. 链表中倒数第k个节点(链表)—day26的主要内容,如果未能解决你的问题,请参考以下文章
Leetcode刷题100天—剑指 Offer 50. 第一个只出现一次的字符(队列)—day13
Leetcode刷题100天—剑指 Offer 22. 链表中倒数第k个节点(链表)—day26
Leetcode刷题100天—剑指 Offer 22. 链表中倒数第k个节点(链表)—day26