题目描述
输入一个链表,输出该链表中倒数第k个结点。
使用快慢指针
/* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solution { public: ListNode* FindKthToTail(ListNode* pListHead,unsigned int k){ if(k<=0) return nullptr; if(!pListHead) return nullptr; ListNode *p=pListHead; unsigned int c=0; while(p&&c<k){ c++; p=p->next; } if(c<k)//k大于链表长度 return nullptr; ListNode *q=pListHead; while(p){ p=p->next; q=q->next; } return q; } };