我正在尝试编写一个接受算术表达式的Java程序,将其从Infix转换为Postfix并评估答案。但是,我需要借助链接列表将表达式表示为Polynomials,并对它们执行Postfix评估。我已经完成了Infix到Postfix的转换,并知道如何评估Postfix。但我正在努力使用链表来表示多项式表达式。使用链接列表求解多项式方程
例如,如果后缀表达式是:40 50 -
我需要存储为4 * 10^1 + 0 * 10^1在一个链表。它可以通过在链接列表中有2个节点,系数和指数来完成。同样的事情为50.
问题是,我不知道有多少链表我需要任何给定的表达式。如果后缀表达式是40 50 60 - +那么我需要将所有3个数字存储在单独的列表中,并将它们存储在堆栈中,直到找到运算符为止。任何人都可以给我任何关于如何进行的建议吗?
你确定你打算把一个单独的号码分割成链表(不仅仅是整个表达式)吗?这是非常直观和低效的。 – Dukeling
[二元表达式树](http://en.wikipedia.org/wiki/Binary_expression_tree)怎么样? –
当你写多项式时,你真的是指[多项式](http://en.wikipedia.org/wiki/Polynomial)还是你的意思是别的? – Joni