剑指offer-14-链表倒数第k个结点

链表中倒数第k个结点

http://www.nowcoder.com/questionTerminal/529d3ae5a407492994ad2a246518148a

思路

  • 快慢指针,快指针先走k步,然后同步走,快指针走到最后,即两个指针中间隔了k个开始走
  • 遍历链表算出长度

代码

快慢

public class Solution {
    public ListNode FindKthToTail(ListNode head,int k) {
        ListNode t=head,res=head;//t为快指针,res为慢指针
        while(k>0 &&t!=null){
            k--;
            t=t.next;
        }
        if(k>0){return null;}
        while(t!=null){
            t=t.next;
            res=res.next;
        }
        return res;
    }
}
剑指offer与数据结构 文章被收录于专栏

本专栏包括剑指offer题目和一些刷题用的数据结构,单调栈,树状数组,差分数组,后面还会更新红黑树等较为复杂的数据结构

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-20 19:57
已编辑
某大厂 golang工程师 23.0k*16.0, 2k房补,年终大概率能拿到
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务