一直想要写的 二叉树 中序 先序 后序遍历算法
递归的太简单了,就不写了。关键是非递归版本。
先序:
我自己的版本:
void RootPreTraverse(Node* p)
{
Stack S;
while(S not empty)
{
p=S.top();
S.pop();
Show(p);
if(p->right!=null)
S...
分类:
其他好文 时间:
2014-06-20 10:55:49
阅读次数:
279
题目
Given a binary tree, determine if it is height-balanced.
For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node...
分类:
其他好文 时间:
2014-06-20 09:02:56
阅读次数:
232
题目
Given inorder and postorder traversal of a tree, construct the binary tree.
Note:
You may assume that duplicates do not exist in the tree.
方法
根据树的中序遍历和后序遍历,来恢复树,使用递归的思想。
Tr...
分类:
其他好文 时间:
2014-06-07 14:50:37
阅读次数:
231
链接:http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=2040
Description:
给出一棵二叉树的中序和前序遍历,输出它的后序遍历。
Input
本题有多组数据,输入处理到文件结束。
每组数据的第一行包括一个整数n,表示这棵二叉树一共有n个节点。
接下来的一行每行包括n个整数,表示...
分类:
其他好文 时间:
2014-06-03 03:10:46
阅读次数:
236
#include#include#include#include#includeusing
namespace std;class node{public: int val; node* left; node* right;
node():val(0),left(NULL),...
分类:
其他好文 时间:
2014-05-26 21:36:49
阅读次数:
264
#include#include#include#include#include#includeusing
namespace std;class node{public: int val; node* left; node* right;
node():val(0),lef...
分类:
其他好文 时间:
2014-05-26 16:14:18
阅读次数:
280
出题:求二叉树中距离最远的两个节点之间的距离,此处的距离定义为节点之间相隔的边数;分析:最远距离maxDis可能并不经过树的root节点,而树中的每一个节点都可能成为最远距离经过的子树的根节点;所以计算出以每个节点为根节点的子树的最
远距离,最后取他们的最大值就是整棵树的最远距离;如果递归层次过多造...
分类:
其他好文 时间:
2014-05-25 22:23:43
阅读次数:
275
Verify post-order sequence of binary search tree.
分类:
其他好文 时间:
2014-05-22 03:20:39
阅读次数:
288
题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字互不相同分析:由后序遍历可以知道最后一个数字是树的根节点,而二叉搜索树的性质可以知道其左边的节点值小于根节点的值,右边的节点值大于根节点的值。由此递归。/*剑指...
分类:
其他好文 时间:
2014-05-22 00:36:31
阅读次数:
305
题目描述
已知一棵二叉树的中序遍历和后序遍历,求二叉树的先序遍历
输入
输入数据有多组,第一行是一个整数t (t<1000),代表有t组测试数据。每组包括两个长度小于50 的字符串,第一个字符串表示二叉树的中序遍历序列,第二个字符串表示二叉树的后序遍历序列。
输出
输出二叉树的先序遍历序列
示例输入
2
dbgeafc
dgebfca
lnixu
linux
示例输出
...
分类:
其他好文 时间:
2014-05-21 09:31:02
阅读次数:
252