
剑指 Offer 22. 链表中倒数第k个节点
发布日期:2021-05-06 23:24:43
浏览次数:26
分类:精选文章
本文共 1295 字,大约阅读时间需要 4 分钟。
package SwordOffer;/*** @Description: 输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。 示例:给定一个链表: 1->2->3->4->5, 和 k = 2.返回链表 4->5.来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。* @Param:* @return:* @Author: lvhong* @Date:* @E-mail lvhong282@163.com*/ class ListNode { int val; ListNode next; ListNode(int x) { val = x; } }public class lab22easy { //单指针 public ListNode getKthFromEnd(ListNode head, int k) { ListNode former = head; int len = 0; while (former != null) { former = former.next; len++; } ListNode out = head; for (int i = 0; i < len - k; i++) { out = out.next; } return out; } //双指针// public ListNode getKthFromEnd(ListNode head, int k) {// ListNode former = head, latter = head;// for(int i = 0; i < k; i++)// former = former.next; //former走到距离latter k步// while(former != null) {// former = former.next; //一起往前走,知道former为null// latter = latter.next; //latter走到了正确的位置// }// return latter;// }}
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2025年04月03日 06时09分56秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
11.2.6 时间值的小数秒
2021-05-08
Redis源码分析(七)--- zipmap压缩图
2021-05-08
【MySQL】(九)触发器
2021-05-08
Oracle 11G环境配置
2021-05-08
【Python】(十二)IO 文件处理
2021-05-08
【Oozie】(三)Oozie 使用实战教学,带你快速上手!
2021-05-08
师兄面试遇到这条 SQL 数据分析题,差点含泪而归!
2021-05-08
C语言的数值溢出问题(上)
2021-05-08
8051单片机(STC89C52)以定时器中断模式实现两倒计时器异步计时
2021-05-08
vue项目通过vue.config.js配置文件进行proxy反向代理跨域
2021-05-08
android:使用audiotrack 类播放wav文件
2021-05-08
聊聊我的五一小假期
2021-05-08
数据库三个级别封锁协议
2021-05-08
ACM/NCPC2016 C Card Hand Sorting(upc 3028)
2021-05-08
ubuntu学习笔记-常用文件、命令以及作用(hosts、vim、ssh)
2021-05-08
SLAM学习笔记-求解视觉SLAM问题
2021-05-08
普歌-允异团队-HashMap面试题
2021-05-08
还在一个一个手动安装虚拟机吗?Cobbler自动部署装机一键最小化安装打把游戏就好了
2021-05-08
程序员应该知道的97件事
2021-05-08