按上述内容构造二叉树,并调用中序遍历的递归算法遍历二叉树,输出遍历结果序列。

论坛 期权论坛 期权     
我是小飞菲   2018-4-26 14:04   3427   1
以递归的先序遍历方法生成二叉树的过程为:先生成根结点,然后递归构造左子树,递归构造右子树。假设要构造二叉树A(B((),D),C((),E)),则要输入字符序列AB#D##C#E##,其中,用#表示算法中的空格字符.
分享到 :
0 人收藏

1 个回复

倒序浏览
2#
梦染斜阳  4级常客 | 2018-4-30 01:53:39
#include聽
using聽namespace聽std;
struct聽node
{
聽聽聽聽struct聽node聽*lchild聽;
聽聽聽聽struct聽node聽*rchild聽;
聽聽聽聽char聽data聽;
};
typedef聽struct聽node聽*聽BTREE聽;
void聽CreateBT(BTREE聽&聽T)
{
聽聽聽聽char聽ch;
聽聽聽聽cin聽>>聽ch;
聽聽聽聽if聽(ch聽==聽'#')
聽聽聽聽聽聽聽聽T聽=聽NULL;
聽聽聽聽else
聽聽聽聽{
聽聽聽聽聽聽聽聽T聽=聽new聽node;
聽聽聽聽聽聽聽聽T聽->聽data聽=聽ch;
聽聽聽聽聽聽聽聽CreateBT聽(T聽->聽lchild);
聽聽聽聽聽聽聽聽CreateBT聽(T聽->聽rchild);
聽聽聽聽}
}
void聽InOrder聽(BTREE聽BT聽)
{
聽聽聽聽if聽(聽BT聽!=聽NULL)
聽聽聽聽{
聽聽聽聽聽聽聽聽InOrder聽(聽BT->lchild聽)聽;
聽聽聽聽聽聽聽聽cout
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:
帖子:
精华:
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP