该文被密码保护。 阅读全文
posted @ 2013-03-29 20:16 Light_yagami 阅读(0) 评论(0) 推荐(0)
摘要: Q:读入一个只包含+-*/的非负整数计算表达式,计算该表达式的值。样例输入:4+2*5-7/11分析:利用堆栈对表达式求值是数据结构中典型的例子,算法分析如下:1.设立两个堆栈,一个存储运算符,一个存储数字2.表达式首尾添加标记运算符,且此运算符优先级最低。3.从左到右遍历表达式,若为数字,则压入数据栈。4.若为运算符,则与栈顶运算符进行优先级比较,如果当前运算符优先级高于(不低于)栈顶运算符,则当前运算符压入运算符栈;反之,则弹出栈顶运算符,同时连续弹出数字栈顶数字两次,计算后将结果压入数字栈,将当前运算符压入运算符栈。5.重复3,4步,直到遇到标志运算符。代码如下:#include< 阅读全文
posted @ 2013-03-29 19:51 Light_yagami 阅读(159) 评论(0) 推荐(0)