gpt4 book ai didi

algorithm - 为什么后缀(rpn)表示法比前缀更常用?

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:39:20 24 4
gpt4 key购买 nike

我所说的使用是指它在许多计算器中的使用,例如 HP35-

我的猜测(和困惑)是 -

  1. postfix 实际上更有效地存储内存 -(所以发表评论 here)。 (混淆 - 两者的评估算法与堆栈相似)
  2. 当时计算器中的键盘输入类型(混淆 - 这不应该很重要,因为它只取决于首先或最后给出的运算符的顺序)

可以问这个问题的另一种方式是后缀表示法相对于前缀有什么优势?
谁能赐教一下?

最佳答案

一方面,更容易实现评估。

有了前缀,如果你推送一个操作符,然后是它的操作数,你需要知道操作符何时拥有它的所有操作数。基本上,您需要跟踪您推送的运算符何时拥有所有操作数,以便您可以展开堆栈并进行评估。

由于一个复杂的表达式最终可能会在堆栈上有许多运算符,因此您需要一个可以处理这种情况的数据结构。

例如,这个表达式:- + 10 20 + 30 40 将同时在堆栈上有一个 - 和一个 +时间,对于每一个你都需要知道你是否有可用的操作数。

有了后缀,当你压入一个运算符时,操作数(应该)已经在堆栈上,只需弹出操作数并计算。您只需要一个可以处理操作数的堆栈,不需要其他数据结构。

关于algorithm - 为什么后缀(rpn)表示法比前缀更常用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30974889/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com