链表中倒数第k个结点

原创 2015年11月17日 20:57:52
题目描述


输入一个链表,输出该链表中倒数第k个结点。


C/C++代码:

/*
struct ListNode {
	int val;
	struct ListNode *next;
	ListNode(int x) :
			val(x), next(NULL) {
	}
};*/
class Solution
{
public:
    ListNode *FindKthToTail(ListNode *pListHead, unsigned int k)
    {
        ListNode *p = pListHead;
        int n = 0;
        while(p != NULL)
        {
            n++;
            p = p->next;
        }
        if(n < k) return NULL;
        int i = 0;
        p = pListHead;
        while(p != NULL) {
            if(++i >= (n - k + 1)) {
                 break;
            }
            p = p->next;
        }
        return p;
    }
};


版权声明:本文为博主原创文章,未经博主允许不得转载。

剑指offer——输出链表倒数第K个结点

题目:i输入一个链表,输出链表的倒数第K个结点 本体考虑到链表的特殊性问题,如果按照一般思路思考,我们可以先将链表遍历到最后一个结点,然后再从前向后遍历找到倒数第k个结点。但是链表不允许从后向前进行...
  • Leos618
  • Leos618
  • 2017年07月04日 09:16
  • 131

【38】求链表倒数第k个结点

题目:输入一个链表,输出链表中的倒数第k

题目15:链表中倒数第K个结点

题目:输入一个链表,输出该链表中倒数第K个结点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第一个结点。例如一个链表有6个结点,从头结点开始他们的值依次是1,2,3,4,5,6。这个...
  • jdx888
  • jdx888
  • 2016年09月14日 15:28
  • 131

剑指offer----链表中倒数第K个结点

输入一个链表,输出该链表中倒数第K个结点。从1开始计数,即该链表的尾节点是倒数第一个结点。 思路: 一、链表是单向链表,只能从头结点往后依次遍历,倒数第K个结点,也就是从头结点开始的n-(k-1)...
  • snow_7
  • snow_7
  • 2016年06月20日 11:31
  • 186

【面试题15】链表中倒数第K个结点

题目:链表的倒数第k个节点 题目:输入一个链表,输出该链表中倒数第k个结点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾结点是倒数第1个结点。例如一个链表有6个结点,从头结点开始它们的值依次...

求单链表中倒数第k个结点

题目:实现一个算法,找出单链表中倒数第k个结点。 解法:        下面以递归和非递归的方式解决这个问题。一般来说,递归解决更简洁,但是效率比较差。 例如,就这个问题来说,递归解法的代码量大概只有...

华为OJ——输出单向链表中倒数第k个结点

题目描述   输入一个单向链表,输出该链表中倒数第k个结点,链表的倒数第1个结点为链表的尾指针。 链表结点定义如下:    struct ListNode   { ...

面试题15—链表中倒数第K个结点

题目:求单链表中倒数第K个结点,最后一个结点的下标设置为1。 代码示例: #include using namespace std; template struct Node { T data...

面试题15. 链表中倒数第k个结点

题目描述输入一个链表,输出该链表中倒数第k个结点。思路: Step1. 设置两个指针slow和fast,初始时均指向头结点 Step2. slow不动,fast向前走k-1步 Step3. 然后...

链表中倒数第k个结点(剑指offer)

链表中倒数第k个结点 参与人数:1699时间限制:1秒空间限制:32768K通过比例:21.37%最佳记录:0 ms|8552K(来自  无声) 题目描述 输入一个链表,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:链表中倒数第k个结点
举报原因:
原因补充:

(最多只允许输入30个字)