//找倒数第k个结点
class ListNode{
int val;
ListNode next;
ListNode(int val){
this.val=val;
}
}
public class Practise22{
public ListNode istNodeFindKthToTail(ListNode head,int k){
//遍历链表,找出链表的长度
int a=0;
ListNode cur=head;
while(cur!=null){
cur=cur.next;
a++;
}
if(a<k){
return null;
}
else{
int n=a-k;
ListNode kth=head;
for(int i=0;i<n;i++){
kth=kth.next;
}
return kth;
}
}
}
思路:第一步先找出链表的长度,
第二步再用链表长度减去k.
第三步再遍历一遍被减后的链表,当遍历到最后一个结点,便是倒数第k 个结点