求链表倒数第k个元素
思路:可以定义两个临时指针,一个快指针,一个慢指针,使快指针领先k步,然后慢指针再走,当快指针到末尾的时候,那么慢指针的位置就是倒数第k个指针了。
ListNode *findKthtoLast(ListNode *head,int k)
{if(head == NULL || k < 0)return head;ListNode *runner = head, *chaser = head;for(int i=0;i<k && runner != NULL;i++){runner = runner->next;}if(runner == NULL)return NULL;while(runner != NULL){chaser = chaser->next;runner = runner->next;}return chaser;
}