leetCode如何求链表中倒数第k个节点
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,小编给大家分享一下leetCode如何求链表中倒数第k个节点,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一,链表中倒数第
千家信息网最后更新 2026年11月02日leetCode如何求链表中倒数第k个节点
小编给大家分享一下leetCode如何求链表中倒数第k个节点,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
一,链表中倒数第k个节点
1,问题简述
输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。
2,示例描述
示例:
给定一个链表: 1->2->3->4->5, 和 k = 2.
返回链表 4->5.
3,题解思路
使用快慢指针即可解决
4,题解程序
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public class GetKthFromEndTest {
public static void main(String[] args) {
ListNode l1 = new ListNode(1);
ListNode l2 = new ListNode(2);
ListNode l3 = new ListNode(3);
ListNode l4 = new ListNode(4);
ListNode l5 = new ListNode(5);
l1.next = l2;
l2.next = l3;
l3.next = l4;
l4.next = l5;
int k = 2;
ListNode listNode = getKthFromEnd(l1, k);
System.out.println("listNode = " + listNode);
}
public static ListNode getKthFromEnd(ListNode head, int k) {
if (head == null || head.next == null) {
return head;
}
ListNode slow = head;
ListNode fast = head;
for (int i = 0; i < k; i++) {
fast = fast.next;
}
while (fast != null) {
slow = slow.next;
fast = fast.next;
}
return slow;
}
}
以上是"leetCode如何求链表中倒数第k个节点"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
节点
篇文章
内容
示例
题解
不怎么
从头
大部分
快慢
思路
指针
更多
知识
程序
行业
资讯
资讯频道
问题
频道
数人
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网加科技
互联网科技官网
互联网品科技
网络科技有限互联网
金融科技与互联网金融
互联网科技公司怎么样
未来的互联网科技
互联网科技咨询
佩信高科技互联网
青海省互联网新科技
银川新华互联网科技职业技术培训学校图片
河南猎农互联网科技有限公司
中国航天科技大学国际工业互联网
恒生互联网科技指数跳水
上海京穆互联网科技有限公司
电子商务与互联网科技的关系
互联网科技新闻
科技互联网专业务虚会材料
山东亿川互联网科技有限责任公司
科技发展第三阶段互联网时代
科技和互联网公司
远信互联网科技
凡科互联网科技
中正互联网科技招聘
移动互联网科技股
港股科技和互联网
本届互联网博览会上的黑科技
神州科技互联网有限公司
互联网领先科技成果宣传视频
伍佰万互联网科技是干嘛的