3个回答
推荐于2017-11-26
展开全部
这个问题呢其实很简单,去年考试我们就考到了
1.中序遍历的递归算法定义:
若二叉树非空,则依次执行如下操作:
(1)遍历左子树;
(2)访问根结点;
(3)遍历右子树。
2.先序遍历的递归算法定义:
若二叉树非空,则依次执行如下操作:
(1) 访问根结点;
(2) 遍历左子树;
(3) 遍历右子树。
3.后序遍历得递归算法定义:
若二叉树非空,则依次执行如下操作:
(1)遍历左子树;
(2)遍历右子树;
(3)访问根结点。
比如你知道一个程序的先序遍历是ABCDEFG 中序遍历是CBDAEGF让你推算出后序遍历
因为先序遍历的顺序是根-左-右 那么我们看先序遍历ABCDEFG,那么A就是根
再看中序遍历CBDAEGF,根据中序遍历的左-根-右 看出A左边CBD的都是左子树,右边的EGF是左子树
然后对先序遍历划分 A/BCD/EFG
对左子树CBD 由先序遍历中的A/BCD/EFG可以看出BCD中B在前面 则B是左子树的根 C是下一行的左子树
同理可对EFG分析
那么画出图 A
/ \
B E
/\ \
C D F
/
G
那么后序遍历CDBGFEA
我当初也学了一段时间,比较绕是吧
我在这写了半天 不知道你能看懂不
不行的加我Q
1.中序遍历的递归算法定义:
若二叉树非空,则依次执行如下操作:
(1)遍历左子树;
(2)访问根结点;
(3)遍历右子树。
2.先序遍历的递归算法定义:
若二叉树非空,则依次执行如下操作:
(1) 访问根结点;
(2) 遍历左子树;
(3) 遍历右子树。
3.后序遍历得递归算法定义:
若二叉树非空,则依次执行如下操作:
(1)遍历左子树;
(2)遍历右子树;
(3)访问根结点。
比如你知道一个程序的先序遍历是ABCDEFG 中序遍历是CBDAEGF让你推算出后序遍历
因为先序遍历的顺序是根-左-右 那么我们看先序遍历ABCDEFG,那么A就是根
再看中序遍历CBDAEGF,根据中序遍历的左-根-右 看出A左边CBD的都是左子树,右边的EGF是左子树
然后对先序遍历划分 A/BCD/EFG
对左子树CBD 由先序遍历中的A/BCD/EFG可以看出BCD中B在前面 则B是左子树的根 C是下一行的左子树
同理可对EFG分析
那么画出图 A
/ \
B E
/\ \
C D F
/
G
那么后序遍历CDBGFEA
我当初也学了一段时间,比较绕是吧
我在这写了半天 不知道你能看懂不
不行的加我Q
2013-08-15
展开全部
根据二叉树遍历的规则,首先利用提供的两种遍历结果找到根节点,并分出左子树节点集和右子树节点集;同样利用遍历规则分别找出左子树的根节点及右子树的根节点;依次类推,可以画出整个二叉树。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-15
展开全部
阴历,看月亮,比如出生时月圆,下次生日时也月圆
阳历,不知道
阳历,不知道
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询