题解 | #链表中倒数最后k个结点#
链表中倒数最后k个结点
https://www.nowcoder.com/practice/886370fe658f41b498d40fb34ae76ff9
class Solution {
public:
ListNode* FindKthToTail(ListNode* pHead, int k) {
// write code here
ListNode* p = pHead;
int cnt = 0;
while(p)#这个while循环就是为了求出链表的长度
{
cnt++;
p = p->next;
}
ListNode* q = pHead;
if(cnt < k)#当链表长度小于k时则返回空
return nullptr;
else#当链表长度大于等于k时
{
int n = cnt-k;
for(int i = 0;i < n;i++)#利用for循环先遍历列表
{
q = q->next;
}
return q;
}
}
};
