题解 | #链表中倒数第k个结点#
链表中倒数第k个结点
http://www.nowcoder.com/practice/529d3ae5a407492994ad2a246518148a
/* 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(pListHead == nullptr) { return nullptr; } ListNodefast = pListHead; ListNodeslow = pListHead; while(k>0 && fast)//这里的可能很大,把fast直接走穿 { fast = fast->next; k--; } while(fast) { slow = slow->next; fast = fast->next; } return (k > 0)?nullptr:slow;//这里要注意一下,因为这个地方如果k很大的化,那么你应该是返回空的。 } };
