数据结构实验之二叉树二:遍历二叉树 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉 ...
分类:
其他好文 时间:
2016-11-04 20:40:01
阅读次数:
404
中序遍历 步骤如下: 关于时间复杂度,其实也是O(n)。分析如下: 前序遍历(相比中序遍历,只是输出当前节点的顺序稍有不同) 后序遍历(需要加入两个小的技巧,一是dump节点,二是倒序输出路径) 复杂度分析: 空间复杂度同样是O(1);时间复杂度也是O(n),倒序输出过程只不过是加大了常数系数。 上 ...
分类:
其他好文 时间:
2016-10-30 19:24:04
阅读次数:
196
二叉树的基本操作: 1.创建二叉树 2.销毁二叉树 3.遍历二叉树:1)前序遍历 2)中序遍历 3)后序遍历 4)层次遍历 4.搜索二叉树 5.删除子叶 6.插入子叶 7.获取左/右子叶的值 8.获取树深度 9.获取叶子结点数 1.创建二叉树 这里创建的是链式存储结构的二叉树,包含数据域,左右两结点 ...
分类:
其他好文 时间:
2016-10-28 20:13:42
阅读次数:
252
设计一个算法层序遍历二叉树(同一层从左到右访问)。思想:用一个队列保存被访问的当前节点的左右孩子以实现层序遍历。void HierarchyBiTree(BiTree Root){LinkQueue *Q; // 保存当前节点的左右孩子的队列InitQueue(Q); // 初始化队列if (Roo ...
分类:
其他好文 时间:
2016-10-24 20:26:25
阅读次数:
155
二叉树的三种遍历 二叉树的有关计算 1.二叉树的深度和层数其实是一样的。2.任意一棵树的总结点数等于总分支数+13.叶子结点也称叶子,度为0的结点。4.一个深度为n的满二叉树的总结点数为 (2^(n-1))-1(其实得出这个结论画个图就知道了,不难)5.深度为h的完全二叉树至少有2^(h-1)个结点 ...
分类:
其他好文 时间:
2016-10-20 15:26:32
阅读次数:
143
二叉树的三种遍历 二叉树的有关计算 1.二叉树的深度和层数其实是一样的。2.任意一棵树的总结点数等于总分支数+13.叶子结点也称叶子,度为0的结点。4.一个深度为n的满二叉树的总结点数为 (2^(n-1))-1(其实得出这个结论画个图就知道了,不难)5.深度为h的完全二叉树至少有2^(h-1)个结点 ...
分类:
其他好文 时间:
2016-10-19 13:56:01
阅读次数:
144
二叉树遍历: 从根结点开始,按照某种次序依次访问二叉树中的所有结点。 前序遍历: 中序遍历: 后序遍历: 层次遍历: 代码实现: ...
分类:
其他好文 时间:
2016-10-03 18:59:40
阅读次数:
106
线索化二叉树: 线索化二叉树指的是将二叉树中的结点进行逻辑意义上的“重排列”,使其可以线性的方式访问每一个结点。 二叉树线索化后每个结点都有一个线性下标,通过这个下标可以快速访问结点,而不需要遍历二叉树。 ...
分类:
其他好文 时间:
2016-10-03 18:57:35
阅读次数:
143
第一种也是最常用的一种,使用queue。还有一种不使用queue的方法。不使用queue的思路,其实就是每次都只存储一层的节点,然后遍历这一层的节点,是真正的按层遍历的思想。每次遍历的都是当前层,记录的都是当前层的下一层。 ...
分类:
其他好文 时间:
2016-09-27 01:44:28
阅读次数:
120