这种题一般有二种形式,共同点是都已知中序序列。如果没有中序序列,是无法唯一确定一棵树的。 <1>已知二叉树的前序序列和中序序列,求解树。 1、确定树的根节点。树根是当前树中所有元素在前序遍历中最先出现的元...
分类:
其他好文 时间:
2014-10-04 10:33:06
阅读次数:
295
把三个二叉树遍历的题放在一起了。递归写法太简单,就不再实现了,每题实现了两种非递归算法。一种是利用栈,时间和空间复杂度都是O(n)。另一种是借助线索二叉树,也叫Morris遍历,充分利用树中节点的空指针域。先序:Binary Tree Preorder TraversalGiven a binary...
分类:
其他好文 时间:
2014-10-03 23:07:55
阅读次数:
341
转:http://blog.csdn.net/zs634134578/article/details/20938113考试时长:120分钟一不定项选择题(共25题,每题4分,共100分,少选、错选、多选均不得分)1已知一棵二叉树,如果先序遍历的节点顺序是:ADCEFGHB,中序遍历是:CDFEGHA...
分类:
其他好文 时间:
2014-10-02 14:45:43
阅读次数:
195
最近使用了二叉树,除了想起能用递归遍历外,其它的方式却想不通。痛恨自己对事情一知半解,查阅资料,总结一下,方便理解。一、各遍历顺序: 先序遍历:根->左子树->右子树 中序遍历:左子树->根->右子树 后序遍历: 左子树->右子树->根二、代码实现 1 #include 2 #inc...
分类:
其他好文 时间:
2014-09-26 00:01:08
阅读次数:
200
这里实现了二叉树的先序遍历、中序遍历、后序遍历的递归和非递归两种形式的遍历以及对二叉树的层次遍历。
很基础,适合数据结构初学者参考。...
分类:
其他好文 时间:
2014-09-25 17:21:49
阅读次数:
223
思路:这道题要观察,举个例子,1 2 * * 3 * 4 * 5 * * 6 7 * 8 * *, 用Stack,先序遍历,遇到数字就入栈,如果遇到 * *,说明栈顶节点是叶子节点,一条根到叶子的路径这时候就存在于栈之中,只要计算栈的size(),就知道当前这条路径的深度,树的height就是这些深...
分类:
其他好文 时间:
2014-09-24 00:06:55
阅读次数:
361
大意:告诉你一棵二叉树的先序遍历和中序遍历求该二叉树的后续遍历代码: 1 #include 2 #include 3 #include 4 using namespace std; 5 6 const int maxn = 30; 7 char pr[maxn], mi[maxn]; 8 ...
分类:
其他好文 时间:
2014-09-23 23:07:15
阅读次数:
169
http://acm.hdu.edu.cn/showproblem.php?pid=1710已知先序和中序遍历,求后序遍历二叉树。思路:先递归建树的过程,后后序遍历。Binary Tree TraversalsTime Limit: 1000/1000 MS (Java/Others)Memory ...
分类:
其他好文 时间:
2014-09-23 22:38:55
阅读次数:
237
题意:按先序方式输入一棵二叉树,节点是带权的,左孩子在父节点的左一个单位,右孩子在父节点的右一个单位,从左到右输出相同水平位置节点之和。分析:做了好几道二叉树的题,代码应该也很好理解了。这里maxn开始设了200、500都RE,后来索性开了2000,AC了紫书上面init函数最后应该加一句 retu...
分类:
其他好文 时间:
2014-09-23 01:24:23
阅读次数:
200
二叉树有三种递归的遍历方式:先序遍历,先父节点 然后左孩子 最后右孩子中序遍历,先左孩子 然后父节点 最后父节点后序遍历,先左孩子 然后右孩子 最后父节点这里有更详细的解释:http://blog.csdn.net/sicofield/article/details/9066987紫书上面写错了,后...
分类:
其他好文 时间:
2014-09-22 00:50:21
阅读次数:
242