队列与堆栈2.pptVIP

  • 2
  • 0
  • 约7.93千字
  • 约 32页
  • 2017-07-08 发布于辽宁
  • 举报
队列与堆栈2.ppt

3.2 栈的应用举例 3.2.5 表达式求值 算符优先法: (4+2*3)-10/5 =(4+6)-10/5 = 10-10/5 =10-2 = 8 操作数(operand): 进OPND栈 操作符(operator): 进OPTR栈 界限符(delimiter): #、()等 #是我们设定的表达式开始和结束标识符。 算符间的优先关系: θ1 θ2 + - * / ( ) # + - * / ( ≒ ) # = 算法基本思想: 1、设置操作数栈OPND为空,表达式起始符#为运算符栈OPTR的栈底元素; 2、依次读入表达式中的每个字符,若是操作数则进OPND栈,若是运算符,则和OPTR栈的栈顶运算符比较优先权后做相应操作,直到整个表达式求值完毕。 算术表达式求值过程(算法3.4) OperandType EvaluateExpression() {InitStack(OPTR); Push(OPTR, ‘#’); InitStack(OPND); c = getchar(); wh

文档评论(0)

1亿VIP精品文档

相关文档