题目描述输入一个链表,输出该链表中倒数第k个结点。
分类:链表
解法1:双指针,第一个指针先走k步,然后第二个指针也开始走,当第一个指针到达末尾,第二个指针也就是到了倒数第k个节点
要注意null链表和链表长度不足k的情况
/*
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}*/
public class Solution {
public ListNode FindKthToTail(ListNode head,int k) {
int i = 0;
ListNode cur = head;
while(cur!=null&&i++<k){
cur = cur.next;
}
if(i<k) return null;
while(cur!=null){
head = head.next;
cur = cur.next;
}
return head;
}
}