双指针。一个先走k-1步,然后大家再一起走
class Solution {
public:
ListNode* FindKthToTail(ListNode* pHead, int k) {
if(!pHead) return NULL;
ListNode* ans=pHead;
while(pHead->next&&k!=1){
k--;
pHead=pHead->next;
}
if(k!=1) return NULL;
while(pHead->next){
pHead=pHead->next;
ans=ans->next;
}
return ans;
}
};
京公网安备 11010502036488号