[算法]链表的逆序遍历节点
有一个链表,知道链表头,怎么逆序打印出链表每个节点的值。
我们知道,当知道了链表头的时候,很容易顺序访问所有节点的值,但是如何逆序访问所有节点呢?
访问一棵二叉树,通常可以深度优先和广度优先访问每个节点,深度优先又分为先序,中序和后续遍历,后续遍历就是先访问树的右子树,再访问左子树,最后访问父节点,如果我们把一个链表看成是一颗单叉树,利用树的后续遍历就达到了逆序访问链表的每个节点,利用递归,实现代码如下:
struct node
{
int val;
node* next;
};
void travel(node*head)
{
if(head && head->next)
{
travel(head->next);
}
if(head)
printf("val=%d\n",head->val);
}
node* head = new node;
head->next=NULL;
head->val = 0;
node *h=head;
for(int i=1;i<10;i++)
{
node *nd = new node;
nd->val = i;
nd->next = NULL;
h->next = nd;
h = nd;
}
travel(head);
[算法]链表的逆序遍历节点相关推荐
- 大厂面试算法系列-如何实现链表的逆序(二)-递归法
导语 接着上次的内容,上次博客中展示了原地进行单链表的逆序操作,当然除了原地逆序还可以通过递归的方式进行调用操作.下面就来看看通过递归的方式如何进行单链表的逆序操作. 递归法逆序链表 假定原来 ...
- 大厂面试算法系列-如何实现链表的逆序(一)-原地逆序
题目描述 给定一个带有头节点的单向列表,将这个链表进行逆序.例如head->1->3->4->2,逆序之后变成head->2->4->3->1 题目 ...
- 二叉树 BinaryTree (先序、中序、后序遍历 节点查找、插入、删除 完整类) Java数据结构与算法
二叉树 BinaryTree (先序.中序.后序遍历 节点查找.插入.删除 完整类) Java数据结构与算法 源代码: view plain /** * * @author sunnyykn */ i ...
- 如何实现链表的逆序?
如何实现链表的逆序? 下面介绍了两种方法:1.就地逆序法 2.插入法 单链表数据结构 /*** @program: 算法与数据结构* @description: 单链表数据结构* @author: 粉 ...
- 实现链表的逆序的三种方式
文章目录 问题 分析 方法一:就地逆序 方法二:递归法 方法三:插入法(推荐) 问题 给定一个带头节点的单链表,将其逆序.head->1->2->3->4->5-> ...
- 单链表实现一元多项式相加_python面试系列 01如何实现单链表的逆序
题目介绍 来源:腾讯笔试 难度系数:★★★☆☆ 考察频率:★★★★☆ 题目描述: 给定一个带头结点的单链表,请将其逆序 ...
- 【C++】链表反转逆序|建立、删除、修改、插入|linux内核链表与普通链表
目录 C++实现链表逆序 链表的建立.删除.修改.插入 linux内核链表与普通链表 C++实现链表逆序 实现链表逆序,首先要有一个链表,下面是链表的结构体: typedef struct listn ...
- c 语言中双向链表逆转编程题,C/C++ 双链表之逆序的实例详解
C/C++ 双链表之逆序的实例详解 一.结点结构 双向链表的数据结构定义如下: typedef struct node { ElemType data; struct node *prior stru ...
- C语言单向链表的逆序输出
最近在学习链表,看到书上说可以采取每次在链表头部插入新增节点的方法,将链表逆序,也就是建立的链表节点内容与数据的输入顺序相反.我便来了兴趣,想着试试看,结果没搞懂,于是开始百度.看了几遍博客后终于是明 ...
最新文章
- 2012年我的十大工程9——形象工程
- Nanopore测序
- 如何做一名专业的软件测试工程师
- Eclipse使用Maven时出现:Index downloads are disabled, search results may be incomplete.问题解决...
- 炎炎夏日需要一个清凉的地 - 自制水冷系统
- JavaScript eval() 函数
- 记录MySQL下所执行的所有命令
- 面试官问我会不会APP抓包,我..
- 【玩转cocos2d-x之三十七】粒子系统的加载优化
- 最优化理论与方法(part4)--秩一校正
- Linux实战案例(2)实例讲解使用软连接的场景和过程
- python random库下载_Python---random库(随机数)
- 前端现在有发展前途吗?应届生好找工作吗?
- ubuntu系统部署python3.6.4
- DB2 V10.5 PureScale支持HADR
- Windows服务器搭建Redis
- APICloud手机端网站直接制作手机APP
- PP实施经验分享(24)——ECN应用及系统操作
- 双鱼林java_双鱼林Java代码生成器
- 商城限时秒杀抢购系统
热门文章
- python mysql connector update_Python(Mysql Connector)如何刷新curs上的结果
- 基于jquery的php分页,基于jQuery封装的分页组件
- python 字符串去除中文
- 的路由放在本地_支持双频+WiFi 6,穿墙力强,领势AX3200路由器体验
- 报错解决方法1:‘A GDAL API version must be specified.’
- 文计笔记7:HTML与CSS
- 【新功能,新插件】-全新来袭,CSDN浏览器助手这一款无广告干净界面插件你值得拥有!
- 数据中台(二)数据质量分析及提升
- SVM-支持向量机原理详解与实践之四
- C语言-求字符串长度-strlen()与sizeof()