wdq92500 2016-02-29 11:50 采纳率: 0%
浏览 3589
已采纳

急急急!设计一个程序实现基于二叉树的算术表达式的操作 求代码 有重谢!

【问题描述】
一个表达式和一棵二叉树之间,存在着自然的对应关系.写一个程序,实现基于二叉树表示的算术表达式的操作.
知识点:二叉树,表达式树,二叉树遍历
难度级:★★★
【任务要求】
假设算术表达式 Expression 内可以含有变量(a~z)、常量(0~9)和二元运算符(+,-,*,/,^(乘幂)).
实现以下操作:
1) ReadExpre(E)—以字符序列的形式输入语法正确的前缀表达式并构造表达式 E.
2) WriteExpre(E)—用带括弧的中缀表达式输出表达式 E.
3) Assign(V,c)—实现对变量 V的赋值(V=c),变量的初值为0.
4) Value(E)—对算术表达式 E求值.
5) CompoundExpr(P,E1,E2)--构造一个新的复合表达式(E1)P(E2)
【测试数据】
1) 分别输入0;a;-91;+a*bc;+*5^x2*8x;+++*3^x3*2^x2x6 并输出.
2) 每当输入一个表达式后,对其中的变量赋值,然后对表达式求值.

  • 写回答

1条回答 默认 最新

报告相同问题?

悬赏问题

  • ¥500 高有偿提问!求优化设计微信小程序
  • ¥15 matlab在安装时报错 无法找到入口 无法定位程序输入点
  • ¥15 收益高的广告联盟有哪些
  • ¥15 Android Studio webview 的使用问题, 播放器横屏全屏
  • ¥15 删掉jdk后重新下载,Java web所需要的eclipse无法使用
  • ¥15 uniapp正式环境中通过webapi将本地数据推送到设备出现的跨域问题
  • ¥15 xui建立节点,显示错误
  • ¥15 关于#单片机#的问题:开始、复位、十进制的功能可以实现,但是切换八进制的功能无法实现(按下按键也没有效果),把初始状态调成八进制,也是八进制可以实现但是切换到十进制不行(相关搜索:汇编语言|计数器)
  • ¥15 VINS-Mono或Fusion中feature_manager中estimated_depth是特征的深度还是逆深度?
  • ¥15 谷歌浏览器如何备份抖音网页数据