题目描述
输入一个链表,输出该链表中倒数第k个结点。
示例1
输入
1,{1,2,3,4,5}
返回值
{5}
public class Solution {
//计算链表的长度
public int getLength(ListNode head){
int len=0;
for(ListNode cur=head;cur!=null;cur=cur.next){
len++;
}
return len;
}
public ListNode FindKthToTail(ListNode head,int k) {
if(head==null){//如果为空链表,返回null
return null;
}
int len=getLength(head);
if(k>len){//如果k值大于链表长度,返回null
return null;
}
ListNode cur=head;
//倒数第k个即正数第len-k个,所以循环len-k次即可
for(int i=0;i<len-k;i++){
cur=cur.next;
}
return cur;
}
}