链表中倒数第k个结点
思路:
使用快慢指针的思想,快慢指针,快慢指针之间间隔k个结点,当快指针指向链表最后结点的空指针时,慢指针指向倒数第k个结点。
ListNode* FindKthToTail(ListNode* pListHead, unsigned int k) {
if(k <=0)
return nullptr;
ListNode* fast = pListHead;
ListNode* low = pListHead;
int n = k;
while(n--)
{
if(fast)
fast = fast->next;
else
return nullptr;
}
while(fast)
{
fast = fast->next;
low = low->next;
}
return low;
}