朴素的表达式求值算法
加减乘除,用py来写的
用双栈来实现就可以
我后续会进行C/C++代码的补充;
先来看一下python的写法
第一种
直接模拟双栈,python的写法比较简单一下
def compare(op1, op2):
"""
比较两个运算符的优先级,乘除运算优先级比加减高
op1优先级比op2高返回True,否则返回False
"""
return op1 in ["*", "/"] and op2 in ["+", "-"]
def getvalue(num1, num2, operator):
"""
根据运算符号operator计算结果并返回
"""
if operator == "+":
return num1 + num2
elif operator == "-":
return num1 - num2
elif operator == "*":
return num1 * num2
else: # /
return num1 // num2
def process(data, opt