链表中倒数第k个结点
2014-02-23 02:00
176 查看
#include "stdafx.h" #include <iostream> /* 题目:链表中倒数第k个节点 输入一个链表,输出该链表中倒数第k个结点.为了符合大多数人的习惯.本题从1开始计数,即链表的尾结点是倒数第一个结点。 比如一个链表有6个结点,从头结点开始它们的值依次是1,2,3,4,5,6这个链表的倒数第三个结点是值为4的结点. struct ListNode { int m_nValue; ListNode* m_pNext; }; */ using namespace std; struct ListNode { int m_nValue; ListNode* m_pNext; }; ListNode* FindKthToTail(ListNode* pListHead,unsigned int k) { if(pListHead == NULL||k==0) { return NULL; } ListNode* pHead = pListHead; ListNode* pBehind = NULL; for(unsigned int i = 0;i<k-1;++i) { if(pHead->m_pNext!=NULL) { pHead = pHead->m_pNext; } else { return NULL; } } pBehind = pListHead; while(pHead->m_pNext!=NULL) { pHead = pHead->m_pNext; pBehind = pBehind ->m_pNext; } return pBehind; } int _tmain(int argc, _TCHAR* argv[]) { return 0 ; }
相关文章推荐
- 输出单向链表中倒数第k个结点
- 寻找链表中倒数第K个结点的位置
- 剑指offer-3-面试15:链表中倒数第k个结点
- 每天学习一算法系列(13) (输入一个单向链表,输出该链表中倒数第k个结点)
- 一个单向链表,输出该链表中倒数第k个结点,链表的倒数第0个结点为链表的尾指针
- 剑指offer:输入一个链表,输出该链表中倒数第k个结点。
- nowcoder_剑指offer_链表中倒数第K个结点
- 程序员面试宝典——(09)-查找链表中倒数第k个结点
- 《剑指offer》--- 链表中的倒数第k个结点 和 反转链表
- 剑指offer面试第15题:链表中倒数第k个结点
- 每天一个小算法(5)----找到链表倒数第K个结点
- 输入一个链表,输出该链表中倒数第k个结点。
- 输出链表中倒数第k个结点。
- 009-查找链表中倒数第k个结点
- 【剑指offer】Q15:链表中的倒数第K个结点
- 逆置单链表以及求链表倒数第k个结点——题集(二)
- [剑指Offer] 14.链表中倒数第k个结点
- CCI 2.2 找出单向链表中倒数第k个结点
- 链表中倒数第k个结点
- 链表中倒数第k个结点java