设有下列二叉树,对此二叉树中序遍历的结果为
发布网友
发布时间:2022-09-20 01:16
我来回答
共1个回答
热心网友
时间:2023-11-01 12:44
这里的序是指访问父节点,其余按先左儿子,后右儿子
中序遍历就是中间访问父节点,就是左儿子、父节点、右儿子
先序便利就是父节点、左儿子、右儿子
后序遍历就是左儿子、右儿子、父节点
看你这个图,先看根节点,中序遍历先遍历左子树左子树、根节点(f)、右子树
对于左子树、右子树按同样方式:
左:先遍历出a,然后父节点c,右子树再先遍历左儿子b,父节点d
左子树为acbd
加上根节点f
右子树继续这样,就得到你上面的答案了
void
print(tree
a)
//假设为中序遍历树的函数
{
print(a->left);
//先左儿子
printf("%d\n",a->e);
//输出父节点的值
print(a->right);
//后右儿子
}
其余两个只要调换位置即可