题目描述
输入一个链表,输出该链表中倒数第k个结点。
可以用两个指针实现,first和second均指向头指针,将second指针后移动k-1位,然后再将两个指针同时往后
移动,直到second的next指向空。唯一需要注意的就是输入的k必须为正数,且不能超过链表的长度。
public class Solution {
public ListNode FindKthToTail(ListNode head,int k) {
if(k<=0||head==null){
return null;
}
ListNode first=head;
ListNode second=head;
for(int i=0;i<k-1;i++){
if(second.next==null){
return null;
}else{
second=second.next;
}
}
while(second.next!=null){
first=first.next;
second=second.next;
}
return first;
}
}
来源:https://www.cnblogs.com/huangbei1990/p/5742422.html