链表倒数第k个结点
链表中倒数第k个结点
http://www.nowcoder.com/questionTerminal/529d3ae5a407492994ad2a246518148a
题目描述
输入一个链表,输出该链表中倒数第k个结点。
【递归!!】类似于二叉树遍历,从后面往前找,直到找到第k个结点(也就是倒数第k个结点)
AC代码:
class Solution { public: int count=0; ListNode* p=NULL; void Find(ListNode* pListHead, unsigned int k) { if(pListHead==NULL) return; FindKthToTail(pListHead->next,k); count++; if(count==k) { p=pListHead; } } ListNode* FindKthToTail(ListNode* pListHead, unsigned int k) { Find(pListHead,k); return p; } };