我需要一个 LIFO 堆栈的列表或数组(dim=1)。每个堆栈都通过数组索引来访问。 但是设置数组中堆栈数量的语法是什么呢? 访问特定堆栈的语法是什么? 想法是这样的:
library (fliof)
s<-LIFO() # An empty LIFO stack.
x<-array(s, dim-1) # ??? missing something to say how many stacks.
push(x[1],4) # Error is ".stack' does not exist in the calling environment"
问候。
flifo 包(注意有问题的拼写错误)假设堆栈是调用环境中的一个变量,这使得它在列表中的使用出现问题。 解决方法是使用 R 环境而不是 R 列表,但使用直接支持此功能的 fastmap 包可能更容易。 下面我们创建一个包含 3 个堆栈的列表,将 4 个堆栈推入第一个堆栈,然后查看顶部。
library(fastmap)
L <- Map(\(x) faststack(), 1:3)
L[[1]]$push(4)
L[[1]]$peek()
## [1] 4