递归解法:遍历到末尾就返回上一层,并且节点计数。当计数到k时,把目标该几点赋值给目标节点,最后返回目标节点即可。这种方法对删除链表的倒数第K个节点也适用,有兴趣的小伙伴自行下来试试。

public class Solution {
    int n =  0;
    ListNode target=null;
    public ListNode FindKthToTail (ListNode pHead, int k) {
        if(pHead==null)return pHead;
        FindKthToTail(pHead.next,k);
        n++;
        if(n==k){
            target = pHead;
        }
        return target;
    }
}