13得票2回答
生成所有可能的“唯一”的RPN(逆波兰表示法)表达式。

我希望在Python中生成所有可能的逆波兰表达式(Reverse Polish notation),使用输入列表中的字母(例如['a', 'b', 'c'])并包含运算符['+', '-', '*', '/']。 我的想法是,我们可以向当前表达式添加元素,直到发生以下情况之一:要么我们已经使...

10得票2回答
Shunting-yard算法中如何处理一元减号

在将中缀表达式转换为后缀表达式时,是否有更好的处理一元“-”的方法? 显而易见的方法是在每个一元“-”之前添加一个0。是否有更好的实现方法?谢谢!

9得票7回答
将逆波兰表示法转换

在使用C++或C#时,有没有将逆波兰表达式解释为“正常”数学表达式的方法?我在一家工程公司工作,他们偶尔会使用RPN,我们需要一种转换的方法。有什么建议吗?

7得票2回答
逆波兰表达式(Postfix)中的可变长度运算符

背景: 在传统的逆波兰式中,所有操作符必须具有固定长度,这使得RPN易于通过代码进行评估和操作,因为每个标记、表达式和子表达式都是“自包含”的,这样可以盲目地将x y *中的y替换为y 1 +以获得x y 1 + *,这是另一个有效的表达式,可以按照您想要的方式执行。 这里是一个带有命名变量支...

7得票9回答
基于栈的表达式求值在数学解析中的效率

我需要为学术目的编写一个应用程序,可以绘制用户输入的表达式,例如:f(x) = 1 - exp(3^(5*ln(cosx)) + x) 我选择使用Shunting-Yard算法将表达式转换为逆波兰表达式,并将原始函数(如“cos”)视为一元运算符。这意味着上面的函数将被转换为一系列标记,例如...

7得票3回答
这个Python后缀表达式(逆波兰表达式)解释器能否被做得更高效和准确?

这是一个使用栈来计算表达式的Python后缀符号解释器。有没有办法使这个函数更高效和准确? #!/usr/bin/env python import operator import doctest class Stack: """A stack is a collection...