//单链表反转
ListNode* RevertList(ListNode* m_pHead){
ListNode* pCurrent = m_pHead;
ListNode* pPrev=NULL;
ListNode* pNext =NULL; while (pCurrent != NULL)
{
pNext = pCurrent->m_pNext;
pCurrent->m_pNext = pPrev;
pPrev = pCurrent;
pCurrent = pNext;
}
return pPrev;
}

查找倒数第K个:设置两个指针p1,p2,首先p1和p2都指向链表的头部head,然后p2向前走k步,这样p1和p2之间就间隔k个节点,最后p1和p2同时向前移动,直至p2走到链表末尾,然后返回p1就是我们要找的链表的倒数K个节点。

//查找第倒数第K个
ListNode *theKthofList(ListNode* m_pHead, int k){
ListNode* pBack;
ListNode* pPre;
pBack= m_pHead;
pPre= m_pHead;
for (; k>; k--){
pPre= pPre->m_pNext; //移动pPre到与pBack距离k个位置
}
while (pPre!= NULL){
pBack= pBack->m_pNext; //移动p1,pPre直到pPre到达最后
pPre= pPre->m_pNext; }
return pBack;
}

链表学习二:链表反转与查找倒数第K个的更多相关文章

  1. 查找单链表的倒数第k个值

    刚开始,我想到的是一种笨方法,先遍历单链表,计算出单链表的长度len,然后再从头遍历单链表到第len-k个节点,那么 这个节点既是单链表的倒数第k个节点. 不过这种算法时间复杂度挺高的,还有一种更简单 ...

  2. 查找链表中倒数第k个结点

    题目:输入一个单向链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针.链表结点定义如下: struct ListNode { int m_nKey; ListNode* m_pNex ...

  3. 查找单链表中倒数第k个结点

    本文转自:程序员面试题6--查找链表中倒数第k个结点 题目:输入一个单向链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针.链表结点定义如下: struct ListNode { i ...

  4. 求链表倒数第k个节点

    程序员面试题6-查找链表中倒数第k个结点 (-- ::)转载▼ 标签: 杂谈 分类: 程序设计 题目:输入一个单向链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针.链表结点定义如下 ...

  5. LeetCode 剑指 Offer 22. 链表中倒数第k个节点

    剑指 Offer 22. 链表中倒数第k个节点 题意 输入一个链表,输出该链表中倒数第k个节点.为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点. ​ 例如,一个链表有 6 个 ...

  6. 剑指Offer面试题:14.链表的倒数第k个节点

    PS:这是一道出境率极高的题目,记得去年参加校园招聘时我看到了3次,但是每次写的都不完善. 一.题目:链表的倒数第k个节点 题目:输入一个链表,输出该链表中倒数第k个结点.为了符合大多数人的习惯,本题 ...

  7. IT公司100题-13-求链表中倒数第k个结点

    问题描述: 输入一个单向链表,输出该链表中倒数第k个结点.链表倒数第0个节点为NULL. struct list_node { int data; list_node* next; }; 分析: 方法 ...

  8. 9.链表中倒数第k个结点[FindReverseKthLinkedListNode]

    [题目] 输入一个单向链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针.链表结点定义如下:  C++ Code  12345   struct ListNode {     int ...

  9. 链表例题2:链表的倒数第k个节点是多少

    解题思想: 1.创建一个结点类(为后面实现链表做基础) 2.创建一个查询倒数元素的方法 3.使用快慢指针的思想(主要的部分) 图中的表示的是查询倒数第k个结点的操作: 创建一个快慢指针后pre(慢指针 ...

随机推荐

  1. C++——设计模式说明

    一.设计模式6大原则 名称 解释0.单一职责原则(SRP) 就一个类而言,应该仅有一个引起它变化的原因.一."开放-封闭"原则(OCP) 在软件设计模式中,这种不能修改,但可以扩展 ...

  2. BZOJ2097: [Usaco2010 Dec]Exercise 奶牛健美操 贪心+伪树dp+二分

    //论全局变量的杀伤力....QAQ#include<cstdio> #include<iostream> #include<cstdlib> #include&l ...

  3. 播放video

    <html> <head> <title> four in one vedio</title> <style type="text/cs ...

  4. javascript实现倒计时(转)

    <html> <head> <title>倒计时</title> <meta charset="utf-8"> < ...

  5. classList详解,让你的js方便地操作DOM类

    在此之前,jQuery的hasClass.addClass.removeClass我们已经再熟悉不过了,然而我们并不会在每一个项目中都会去使用 jQuery或者Zepto,譬如在移动端的网页中,考虑到 ...

  6. [洛谷P3942] 将军令

    洛谷题目链接:将军令 题目背景 历史/落在/赢家/之手 至少/我们/拥有/传说 谁说/败者/无法/不朽 拳头/只能/让人/低头 念头/却能/让人/抬头 抬头/去看/去爱/去追 你心中的梦 题目描述 又 ...

  7. 【bzoj3926- [Zjoi2015]诸神眷顾的幻想乡】广义sam

    题意:给定一棵树,每个节点有一个颜色,问树上有多少种子串(定义子串为某两个点上的路径),保证叶子节点数<=20.n<=10^5 题解: 叶子节点小于等于20,考虑将每个叶子节点作为根把树给 ...

  8. 【BZOJ4008】【HNOI2015】亚瑟王 [期望DP]

    亚瑟王 Time Limit: 20 Sec  Memory Limit: 512 MB[Submit][Status][Discuss] Description 小 K 不慎被 LL 邪教洗脑了,洗 ...

  9. 矩阵快速幂&T1

    T1 知识储备 在写这一题之前,我们首先要了解矩阵乘法(我就是因为不懂弄了好久...) 矩阵的运算()-----(信息学奥赛一本通之提高篇) 矩阵的加法减法是十分简单的,就是把2个矩阵上对应的位置相加 ...

  10. CentOS 7 主机加固手册-上

    TIPs: 世界上有一撮人专门研究主机安全加固基线,有兴趣的读者可以到 http://benchmarks.cisecurity.org/ 获取更加详细专业的主机安全基线配置文档.或者到 https: ...