【问题标题】:How to build a infix TO prefix function using lua如何使用 lua 构建中缀 TO 前缀函数
【发布时间】:2017-06-28 07:58:41
【问题描述】:

我想创建一个 infixTopostfix 函数,它将接受一个中缀表达式并将其转换为前缀表达式。我想知道是否有任何内置前缀来中缀函数或运算符可以帮助我?

【问题讨论】:

  • 将中缀转换为前缀表达式是什么意思?你想操纵字符串吗? Lua中没有内置这样的东西。但是很可能有一些代码可以在线获得,或者您自己编写。
  • 是否有可用于 lua 的内置堆栈
  • 当然 Lua 有一个堆栈...请使用 google 解决这些琐碎的问题。请阅读How to Ask 并改进您的问题。否则它将被否决和/或关闭。

标签: lua prefix infix-notation


【解决方案1】:

问:是否有适用于 Lua 的内置堆栈?
A:在 Lua 中实现栈很容易。

local stack = {}

local function push(value)
   table.insert(stack, value)
end

local function pop()
   return table.remove(stack)
end

-- Example:
push(42)
push('Yes, Lua has a stack')
print(pop())
print(pop())

--  Output:
-- Yes, Lua has a stack
-- 42

只是不要将nil 推入堆栈。

【讨论】:

  • lua中是否有内置堆栈
  • 是的,所有的局部变量都存放在栈中。只需使用递归和局部变量(函数参数也是局部变量)来利用内置堆栈。
猜你喜欢
  • 1970-01-01
  • 2013-07-05
  • 2012-08-04
  • 2020-01-06
  • 2021-12-06
  • 2019-02-24
  • 1970-01-01
  • 2018-10-02
  • 2010-09-17
相关资源
最近更新 更多