0

我有一个问题,但我不知道如何搜索它,所以想问你。这听起来可能很简单,但我是一个新手。

我正在用 C++ 编写代码。我在一个数组中有 20 个值。我对它们做了一些工作,计算后,我需要为这 20 个值添加一个新值,并需要删除最旧的变量。一种用新值更新数组。

例如:我以前的值:a,b,c,d, .... t
我当前的值:b,c,d,e .... u

只要条件不满足,这个过程就会循环下去。

所以,我的问题是:是否有任何特定的结构或方法来执行这项任务,还是我必须手动处理这项工作?(实际上,我可以通过编写一个对我来说足够的不切实际的方法来做到这一点,但我认为这项工作可能没有专用的堆栈结构)

提前致谢。

4

1 回答 1

3

使用std::queueor std::deque(当 deque 可以从两侧删除元素时,队列是 FIFO(先进先出)的区别):

if (queue.size() == MAX_SIZE) {
    queue.pop_front();
}
queue.push_back(value);
于 2012-04-29T19:54:34.177 回答