永发信息网

计算机,数据结构,c语言。求15题的二叉树图像和正确答案

答案:1  悬赏:10  手机版
解决时间 2021-11-15 12:24
  • 提问者网友:且恨且铭记
  • 2021-11-15 04:08
计算机,数据结构,c语言。求15题的二叉树图像和正确答案
最佳答案
  • 五星知识达人网友:胯下狙击手
  • 2021-11-15 04:31
这里我先反推解释 在解释计算机是怎么生成的 abc+*d-
计算机在读入这个中缀表达式时 会有一个数据栈 ,如果碰见一个运算符号就弹出最上面两个数字计算完成后再压入栈
首先 读入a,b,c 全压入栈遇见+弹出b,c 假设 b+c= e 并把e压栈
栈内有a,e 遇见* 弹出 a,e a*e= f 压栈
栈内 f 遇见d 压栈 栈内f,d 遇见-弹出 f,d f-d = g 读取结束 压入最终结果g
计算机生成中缀表达式
有一个数据队列和运算符号栈
数据放入数据队列运算符号放入符号栈
1.遇见数据直接放入数据队列
2.遇见运算符,先弹出所有优先级大于或者等于该运算符的栈顶元素到数据队列(如果碰见“(”停止,没有则直到遇见比自己优先级低的或者到栈底),在将其压入符号栈
3.如果碰见“(”放入符号栈 直到碰见“)”时吧这两个符号内的运算符依次弹出到数据队列包括这两个符号也弹出但不放入数据队列,如果在()里面有多个运算符按照规则 2
4.最后把符号栈的符号弹出到数据队列,输出
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯