摘要: 3+2*34+5*(6-7)3*(2*(5-3)+1)/2+8-9*(8-1)算数表达式,比如: a*(b+c)/d+e如果求值?一般的过程是分两步,一、将中缀式-》后缀式。算法过程是:栈底放‘#’,从左至右逐字读取中缀式: a.当当前字符为数字时,直接输出; b.当当前字符为"("时,将其压栈; c.当当前字符为")"时,则弹出堆栈中最上的"("之前的所有运算符并输出,然后删除堆栈中的"(" ; d.当当前字符为运算符时,则依次弹出堆栈中优先级大于等于当前运算符的,输出,再将当前运算符压栈; e.当为" 阅读全文
posted @ 2012-08-19 15:34 xxx's blog 阅读(192) 评论(0) 推荐(0) 编辑