题解 | #链表中倒数第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;
}
}