题解 | #链表中倒数第k个结点#

链表中倒数第k个结点

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


public class Solution {
    public ListNode FindKthToTail(ListNode head,int k) {
        if(k<=0 || head==null){
            return null;
        }
      //定义两个引用,1快1慢
        ListNode fast=head;
        ListNode slow=head;
      //让快指针先走k-1步,即倒数第k个节点与最后一个节点的距离
        while(k-1!=0){
            if(fast.next!=null){
                 fast=fast.next;
                k--;
            }else{
                return null;
            }
        }
      //两个指针一起走,直到最后一个节点
        while(fast.next!=null){ 
                fast=fast.next;
                slow=slow.next; 
        }
        return slow;
    }
}
全部评论

相关推荐

11-01 20:03
已编辑
门头沟学院 算法工程师
Amazarashi66:这种也是幸存者偏差了,拿不到这个价的才是大多数
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务