题目描述
输入一个链表,输出该链表中倒数第k个结点。
上手不要先写,应该先分析,画图分析。
首先判断一下,如果是个空链表呢?那么就直接return null;
非空链表的话
我们可以利用链表数组来存储这个链表的每一个结点
那么就获取了链表的下标可获取能力,然后就很简单,根据k值获取需要的结点即可。
如果,链表的长度小于给定的k值,说明需求根本无法达到,那么就return null;
下面是代码实现:
/*
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}*/
public class Solution {
public ListNode FindKthToTail(ListNode head,int k) {
if(head == null){
return null;
}
ListNode[] array = new ListNode[200];
int i = 0;
while(head != null){
array[i++] = head;
head = head.next;
}
if(k > i){
return null;
}
return array[i - k];
}
}