輸入一個鏈表,輸出該鏈表中倒數第k個結點。
注意:
k >= 0;
如果k大於鏈表長度,則返回 NULL;
樣例
輸入:鏈表:1->2->3->4->5 ,k=2
輸出:4
class Solution {
public:
ListNode* findKthToTail(ListNode* pListHead, int k) {
ListNode* p = pListHead;
ListNode* p1 = p;
int n = 0;
while(p1) {
p1 = p1 -> next;
n++;
}
int cnt = n - k;
while(p && cnt) {
p = p -> next;
cnt--;
}
return p;
}
};