数据结构表达式转换求值.pptVIP

  • 17
  • 0
  • 约1.27千字
  • 约 6页
  • 2017-08-15 发布于重庆
  • 举报
数据结构表达式转换求值.ppt

设计一个算法,把中缀表达式转换成后缀表达式 规定运算符的优先数(见表1) 表1 运算符的优先数表 设计一个算法,把中缀表达式转换成后缀表达式 使用运算符栈并作如下规定: (1) 输入是变量,则输出它; (2) 是左括号“(”,无条件地压入堆栈; (3) 输入运算符优先数是2,3,4,5时,如果栈空,则进栈。如果栈不空,则将它与栈顶元素进行比较。倘若优先数大于顶元,则进栈;小于顶元,则顶元退栈并输出之。然后再继续比较,直到大于顶元或栈空时它进栈; (4) 若是右括号“)”,同时栈顶元又为左括号“(”,则退栈,并抹去“)”。否则,按(3)处理; (5) 输入完且栈非空,则将栈内内容逐一退栈,并输出之。 存储结构 W$(I)存放表达式的第I个字符; 利用一个栈S(); P为栈指针。 算法设计 算法:计算表达式(W$(),P) 1. 循环 I以1为步长,从1到n,执行 2. 若 W$(I)=“(“ 3. 则 P-P+1,W$(I)进栈 4. 否则 若W$()是算符 5. 则 若 P=0 6. 则 P-P+1,W$(I)进栈 7. 否则 若 栈顶元的优先级 W$(I)的优先级 8. 则 输出

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档