数据结构怎么还原中序表达式的二叉树a+b*c-d-e/f 为中序表达式,如题,应该有什么规则,请详细一点,最好有步骤图,上面的问题已解决.如果只知道后缀表达式可以还原二叉树吗

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/24 09:55:42
数据结构怎么还原中序表达式的二叉树a+b*c-d-e/f为中序表达式,如题,应该有什么规则,请详细一点,最好有步骤图,上面的问题已解决.如果只知道后缀表达式可以还原二叉树吗数据结构怎么还原中序表达式的

数据结构怎么还原中序表达式的二叉树a+b*c-d-e/f 为中序表达式,如题,应该有什么规则,请详细一点,最好有步骤图,上面的问题已解决.如果只知道后缀表达式可以还原二叉树吗
数据结构怎么还原中序表达式的二叉树
a+b*c-d-e/f 为中序表达式,如题,应该有什么规则,请详细一点,最好有步骤图,
上面的问题已解决.如果只知道后缀表达式可以还原二叉树吗

数据结构怎么还原中序表达式的二叉树a+b*c-d-e/f 为中序表达式,如题,应该有什么规则,请详细一点,最好有步骤图,上面的问题已解决.如果只知道后缀表达式可以还原二叉树吗
根据后缀表达式构造相应的二叉树的算法可如下(先假定‘-’只作为减号运算符,而不存在一元运算的‘-’).
(1)初始化一个空栈s;
(2)从表达式中读入一个字符到ch;
(3)如果ch为字符串结束符,则转到(7);
(4)如果ch为操作数,则构造一个值为ch的叶子结点leaf,将leaf进栈,转到(6);
(5)如果ch为操作符,则构造一个值为ch的分支结点p:
(a)如果栈不空,将栈顶元素出栈到_rchild,并让p->rchild=_rchild.否则算法结束,返回转换失败;
(b)如果栈不空,将栈顶元素出栈到_lchild,并让p->lchild=_lchild,否则算法结束,返回转换失败;
(c)将p进栈;
(6)从表达式中读入下一个字符至ch,转到(3).
(7)如果栈空,返回失败;否则将栈顶元素出栈到root;此时如果栈空,则root即为根,返回成功;否则返回失败.

C++伪代码可如下:
Stack stack;
stack.Init( );
cin>>ch;
while(ch != '\0'){
if(ch Is OperData){
Node* leaf = new Node(ch);
stack.Push(leaf);
}
else{
Node* p = new Node(ch);
if(stack.IsEmpty( )) return NULL;
Node* _rchild = stack.Pop( );
p->rchild = _rchild;
if(stack.IsEmpty( )) return NULL;
Node* _lchild = stack.Pop( );
p->lchild = _lchild;
stack.Push(p);
}
cin >> ch;
}
if(stack.IsEmpty()) return NULL;
root = stack.Pop( );
if(!stack.IsEmpty( )) return NULL;
return root;

数据结构怎么还原中序表达式的二叉树a+b*c-d-e/f 为中序表达式,如题,应该有什么规则,请详细一点,最好有步骤图,上面的问题已解决.如果只知道后缀表达式可以还原二叉树吗 如何将一个表达式转换成二叉树理解表达式a*(b+c)-d的后缀表达式,这个怎么画出二叉树? 数据结构中的树与二叉树已知一算术表达式的中缀形式A+B*C-D/E,后缀ABC*+DE/-,前缀形式为什么 1.具有12个结点的二叉树的二叉链表存储结构中,空链域NULL的个数为( ) A.11 B.13 C.23 D.25这是一道关于数据结构的问题. 数据结构与算法,二叉树,已知前序和中序,求后序,程序怎么设计用C语言 数据结构二叉树问题高度为5的完全二叉树中含有结构点数至少为几个? 数据结构的二叉树问题 假设一棵二叉树的先序序列为ABCDEFGHI,中序序列为BCAEDGHFI,写出其后序序列,并请画出该二叉树. 以下数据结构中哪些不是线性结构 A.有向图 B.栈 C.线索二叉树 D.B树 E.队列 数据结构试题,某二叉树的节点数据采用顺序存储表示如下:0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19EAF D H C GI B(1)试画出此二叉树的图形表示;(2)试给出对该二叉树进行中序遍历的次序;(3)写出 数据结构题 先序序列是ABDEHIKLCFG,中序序列为DBHEKILAFCG.画出此二叉树. 数据结构课程设计!算术表达式与二叉树!【问题描述】一个表达式和一棵二叉树之间,存在着自然的对应关系.写一个程序,实现基于二叉树表示的算术表达式的操作.知识点:二叉树,表达式树, 数据结构 画出表达式的表达式树 实现图的广度优先搜索算法需使用的辅助数据结构为( ) A.栈 B.队列 C.二叉树 还有深度优先, 一道数据结构的题二叉树的先序遍历和中序遍历如下:先序遍历:EFHIGJK;中序遍历:HFIEJKG .该二叉树根的右子树的根是: 数据结构,关于线索二叉树线索二叉树是一种()结构?A,逻辑 B,逻辑和储存 C,D,线性 数据结构二叉树定义问题在下列情况中,可称为二叉树的是( )A.每个结点至多有两棵子树的树 B.哈夫曼树 C.每个结点至多有两棵子树的有序树 D.每个结点只有一棵右子树 E.以上答案都不 (数据结构)有三个数字1,2,3,将它们构成二叉树,中序遍历序列为1,2,3的不同二叉树有______种.可我觉得只有三种啊 有三个数字1,2,3,将它们构成二叉树,中序遍历序列为1,2,3的不同二叉树有______ 数据结构题,中缀表达式A-(B+C/D)*E的后缀表达式是?