刷題筆記(九)——輸出鏈表倒數第k個節點
題目描述
輸入一個鏈表,輸出該鏈表中倒數第k個結點
思路:利用遞歸的嵌套。使用遞歸一直遞歸到最後一個節點,在一層一層退出時,用以變量計數,達到k時則輸出。
/*
struct ListNode {
int val;
struct ListNode *next;
ListNode(int x) :
val(x), next(NULL) {
}
};*/
class Solution {
int count =0;
public:
ListNode* FindKthToTail(ListNode* pListHead, unsigned int k) {
ListNode* p=pListHead;
if(p==NULL)
return p;
ListNode* q=FindKthToTail(p->next, k);
count++;
if(count==k)
return p;
return q;
}
};