2019独角兽企业重金招聘Python工程师标准>>>

今天同学问的问题,猛然一想,还不太容易想到,记录下吧。。。

#include <iostream>using namespace std;struct ListNode{int m_nKey;ListNode* m_pNext;
};bool creatList(ListNode *&head,int *index,int length){if(length<0){return false;}ListNode *pPre = head;for(int i = 0 ; i < length ; ++i){ListNode *pNewListNode = new ListNode;pNewListNode->m_nKey = index[i];pNewListNode->m_pNext = NULL;pPre->m_pNext = pNewListNode;pPre = pNewListNode;}return true;
}ListNode * re(ListNode *pCurrent,ListNode *&head){//递归逆序链表if(pCurrent->m_pNext == NULL){head = pCurrent;return pCurrent;}ListNode * pTemp = re(pCurrent->m_pNext,head);pTemp->m_pNext = pCurrent;return pCurrent;
}void disPlay(ListNode *head){while(head != NULL){cout << head->m_nKey << " ";head = head->m_pNext;}cout << endl;
}int main(){int index[5] = {1,2,3,4,5};ListNode* pHead = new ListNode;ListNode* pLast;creatList(pHead,index,5);re(pHead->m_pNext,pHead->m_pNext)->m_pNext = NULL;disPlay(pHead->m_pNext);system("pause");return 1;
}

转载于:https://my.oschina.net/dapengking/blog/118104

逆序链表--递归思路相关推荐

  1. 大厂面试算法系列-如何实现链表的逆序(二)-递归法

    导语   接着上次的内容,上次博客中展示了原地进行单链表的逆序操作,当然除了原地逆序还可以通过递归的方式进行调用操作.下面就来看看通过递归的方式如何进行单链表的逆序操作. 递归法逆序链表   假定原来 ...

  2. 字符串逆序(递归实现)

    目录 一.代码实现: 二.代码逐步实现过程: 1.不用递归用循环方式实现: 1.使用库函数: 2.不使用库函数: (1)使用参数是数组的形式: (2)使用参数是指针的形式: 2.用递归形式实现: 三. ...

  3. 链表的各种操作实现 链表逆序 链表排序 有序链表归并 链表存在环的判定

    链表的各种操作实现 链表逆序 链表排序 有序链表归并 链表存在环的判定 链表基本操作实现 c语言版本, 该程序在visual c++ 6.0上调试通过! 本人写该程序完全是为学习交流之用,还望大家多多 ...

  4. 链表逆序 递归 java_将链表逆序(递归方式)

    namespace ShopEx.CRS.Test { /// ///将链表逆序 /// public class ReverseLinkList { //入口 public static void ...

  5. c语言递归链表逆序,链表逆序的递归实现

    链表逆序是个很基础的算法,考察的是指针操作和基本数据结构.常规的写法当然是OK的,不过要是还会写出一个递归的链表逆序算法,那别人肯定要给你点个赞了. 1 问题描述 给定一个链表,请将其逆序.即如果链表 ...

  6. 学习笔记——C语言实现单链表的基本操作:创建、输出、插入结点、删除结点、逆序链表

    *************************************************** 更多精彩,欢迎进入:http://shop115376623.taobao.com ****** ...

  7. 逆序链表从m到n位置

    目录 1 逆置整个链表 2 逆置一个链表的m到n位的元素,返回逆置后的头结点 核心步骤 1.如何找到逆置段的开始和结束位置? 2.几个关键位置 3.如何连接逆置后的逆置段 分类讨论 逆置段是否包括逆置 ...

  8. Leetcode-148-排序链表(递归+迭代)

    问题描述: 思路: 拿之前那道"对链表插入排序"的代码可以直接通过,但是不符合题目的要求:时间复杂度控制在O(nlogn),插入排序时间复杂度在o(n^2),又因为此时是对链表不是 ...

  9. java 链表逆序 递归,java用递归和非递归实现链表逆序

    传统的逆序链表方法是使用三个指针来记录节点的状态,防止链表断裂. Node节点 public class Node { private int data; private Node next; pub ...

最新文章

  1. 百变应用场景下,优酷基于图执行引擎的算法服务框架筑造之路!
  2. CCNP路由实验---3、人工汇总EIGRP路由
  3. 给FlvDownloader加了一个视频预览的功能
  4. 自动驾驶「无视」障碍物:百度研究人员攻陷激光雷达
  5. ubuntu android设备 no permissions
  6. LInux:shell 命令:字符串截取
  7. visual studio编译linux,在 Visual Studio 中配置 Linux MSBuild C++ 项目
  8. api php usdt 以太坊_php调用以太坊geth API说明
  9. HDU 漫步校园 (记忆化搜索)
  10. 打印html文件都是空白页,我打印时的额外空白页面(IE中除外) – 是我的打印css吗?...
  11. ISO9001质量管理体系申请条件以及认证流程
  12. 联想服务器告警信息分析,联想服务器mib分析
  13. Linux武侠文字游戏,怀旧的文字游戏,文字武侠手游哪个好玩?
  14. 秦九韶算法——计算方法
  15. 数字化名词解释—数字化转型
  16. 标准差(Standard Deviation) 和 标准误差(Standard Error)
  17. 5年后、10年后,你希望自己是个什么样的人?
  18. The Fewest Coins (混合背包)
  19. SQL SERVER 远程主机强迫关闭一个现有连接
  20. 有幸一睡鸿蒙窍,《嘲鼾睡》原文、译文、翻译、赏析、拼音、作者韩愈-舟山诗词网...

热门文章

  1. 函数沿某一方向的变化率_多元函数知识点(1)
  2. gromacs 安装_GROMACS:粗粒化力场建立和模拟上线!
  3. python 重启电脑_如何在系统重启后恢复Python脚本?
  4. java中的多对多关系解析_Java中多对多映射关系
  5. word流程图整体怎么拆分_word流程图-不会做流程图?这三种方法超级简单!
  6. matlab保存数据save,[转载]matlab中save,load使用方法
  7. 华为的型号命名规则_iQOO新品入网;三星Galaxy S21首张官方渲染图曝光;华为nova8真机曝光...
  8. 开源运维管理软件排名_企业运维监控平台架构设计与实现(ganglia篇)
  9. linux常见的危险命令,Linux上最危险的8个命令
  10. day02:关于惯性导航工具箱的学习与使用:use of the progen