
二叉树中的中序遍历和先序遍历是什么意思?
3个回答
展开全部
这里的序是指访问父节点,其余按先左儿子,后右儿子
中序遍历就是中间访问父节点,就是左儿子、父节点、右儿子
先序便利就是父节点、左儿子、右儿子
后序遍历就是左儿子、右儿子、父节点
看你这个图,先看根节点,中序遍历先遍历左子树左子树、根节点(f)、右子树
对于左子树、右子树按同样方式:
左:先遍历出a,然后父节点c,右子树再先遍历左儿子b,父节点d
左子树为acbd
加上根节点f
右子树继续这样,就得到你上面的答案了
void
print(tree
a)
//假设为中序遍历树的函数
{
print(a->left);
//先左儿子
printf("%d\n",a->e);
//输出父节点的值
print(a->right);
//后右儿子
}
其余两个只要调换位置即可
中序遍历就是中间访问父节点,就是左儿子、父节点、右儿子
先序便利就是父节点、左儿子、右儿子
后序遍历就是左儿子、右儿子、父节点
看你这个图,先看根节点,中序遍历先遍历左子树左子树、根节点(f)、右子树
对于左子树、右子树按同样方式:
左:先遍历出a,然后父节点c,右子树再先遍历左儿子b,父节点d
左子树为acbd
加上根节点f
右子树继续这样,就得到你上面的答案了
void
print(tree
a)
//假设为中序遍历树的函数
{
print(a->left);
//先左儿子
printf("%d\n",a->e);
//输出父节点的值
print(a->right);
//后右儿子
}
其余两个只要调换位置即可
展开全部
中序遍历 按 左子树, 根节点,右子树 的顺序遍历。
先序遍历 按 根节点, 左子树 右子树 的顺序遍历。
比如 6
/ \
5 7
/ \
1 4
中序: 1 5 4 6 7
先序: 6 5 1 4 7
先序遍历 按 根节点, 左子树 右子树 的顺序遍历。
比如 6
/ \
5 7
/ \
1 4
中序: 1 5 4 6 7
先序: 6 5 1 4 7
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是访问二叉树根结点的顺序。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询