- 博客(13)
- 收藏
- 关注
原创 二叉树的非递归遍历(层次遍历,非递归中序、先序遍历)
上一篇文章介绍的是二叉树中有关递归的一些运算,这一篇主要介绍二叉树中非递归遍历的实现。主要引入了堆栈和队列的思想。其中层次遍历运用了队列的思想,非递归的中序、先序和后序遍历皆借助了栈的思想。
2022-11-21 10:37:50 840
原创 二叉树的一些递归算法(构建、遍历、求结点数、高度)
二叉树的数据结构中,例如构建一棵二叉树、遍历一棵二叉树、以及求一棵二叉树的高度或者结点总数,都可以运用到递归算法,递归算法一般比较简洁,便于理解,但也存在一定的缺陷,例如递归中很多计算都是重复的,由于其本质是把一个问题分解成两个或者多个小问题,多个小问题存在相互重叠的部分,则存在重复计算,如fibonacci斐波那契数列的递归实现。不过这一篇先看看递归的,下一篇再谈谈非递归如何实现二叉树的创建、遍历等。
2022-09-29 15:21:25 452 1
原创 带表头结点的单链表
带表头结点的单链表的查找、增删等操作与不带表头结点的单链表大体一致,只不过带表头结点的单链表操作起来更方便,无需单独讨论第一个结点的插入和删除。
2022-09-11 21:16:26 195
原创 单链表的基础操作
在学习数据结构的过程中,首先接触到的就是线性表,线性表中的单链表,博主在一开始的时候真的是一头雾水,首先是对于指针的了解甚浅,其次是觉得这玩意太抽象了。但是后来重新看了之后发现,这玩意儿,也就这样吧!下面,以单链表为例,展开单链表的一些基础操作。...
2022-07-19 20:22:32 2785 2
原创 链表的基本操作
链表的基本操作包括建立(批量存入数据)、打印(输出所有数据)、删除(在批量数据中删除指定数据)、插入(在批量数据中添加一个数据)等。
2022-07-13 19:51:27 7115 3
原创 C语言中带指针和不带指针交换变量值
在C语言中,我们经常遇到交换两个数值的情况,一般会选择通过指针交换两个数值的地址而真正交换两个数。有些小伙伴不太明白两者之间的区别,这里就详细地说明一下。
2022-07-05 12:25:45 1084 2
空空如也
二叉树非递归后序遍历
2022-11-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人