输入一个链表,输出该链表中倒数第k个结点。
2017-03-10 11:44
225 查看
题目:
输入一个链表,输出该链表中倒数第k个结点。
两个指针,有一个先走k-1步。另一个从头开始,两个同时走,当一个到达末尾时,另一个就到了末尾k的位置。注意不足链表长度不为k的情况
输入一个链表,输出该链表中倒数第k个结点。
两个指针,有一个先走k-1步。另一个从头开始,两个同时走,当一个到达末尾时,另一个就到了末尾k的位置。注意不足链表长度不为k的情况
/* 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==NULL) return NULL; ListNode* begin=pListHead; ListNode* pre=pListHead; int count=k-1; while(begin!=NULL&&count) { --count; begin=begin->next; } if(count>0||begin==NULL) return NULL; ListNode* temp=pListHead; while(begin!=NULL) { begin=begin->next; temp=pre; pre=pre->next; } return temp; } };
相关文章推荐
- 输入一个单向链表,输出其倒数第k个结点
- 输入一个单向链表,输出该链表中倒数第k个结点
- 输入一个链表,输出该链表中倒数第k个结点
- 输入一个链表,输出该链表中倒数第k个结点
- 输入一个单向链表,输出该链表中倒数第K个结点
- 13 输入一个单向链表,输出该链表中倒数第k个结点
- 13.输入一个单向链表,输出该链表中倒数第k个结点。链表的倒数第0个结点为链表的尾指针
- 面试题15:输入一个链表,输出该链表中倒数第k个结点。
- 输入一个单向链表,输出该链表中倒数第k个结点,链表的倒数第0个结点为链表的尾指针
- 数据结构——算法之(004)(输入一个单向链表,输出该链表中倒数第k个结点)
- 面试题15、输入一个链表,输出该链表中倒数第k个结点。
- 13输入一个单向链表,输出该链表中倒数第k个结点。链表的倒数第0个结点为链表的尾指针。
- [java 面试100道]13.输入一个单向链表,输出该链表中倒数第k个结点。
- 输入一个单向链表,输出该链表中倒数第k个结点
- 每天一道算法题7 查找链表中倒数第k个结点 ; 输入一个单向链表。如果该链表的结点数为奇数,输出中间的结点;如果链表结点数为偶数,输出中间两个结点前面的一个
- 13、输入一个单向链表,输出该链表中倒数第k个结点
- 输入一个链表,输出该链表中倒数第k个结点。
- 11. 微软面试题:输入一个单向链表,输出该链表中倒数第k个结点。链表的倒数第0个结点为链表的尾指针
- 剑指offer:输入一个链表,输出该链表中倒数第k个结点。
- 输入一个单向链表,输出该链表中倒数第k个结点。链表的倒数第0个结点为链表 的尾指针