struct ListNode* FindKthToTail(struct ListNode* pHead, int k ) {
    struct ListNode* fast = pHead;
    struct ListNode*slow= pHead;
while(k--){
     if(!fast){
        return NULL;
     }
     fast = fast -> next;
  }
while(fast)
{
    fast = fast->next;
    slow = slow-> next;
}
    return slow;
}

采用快慢指针方法,fast比slow多走k步,先采用一个循环令fast走k步同时判断其是否传进一个空指针,或是走出边界

走完k步后二者开始一起前进,直到fast为空slow即为倒数第k个节点