以递增顺序反向堆叠

时间:2013-03-01 19:46:03

标签: c++ loops stack reverse non-recursive

以交替的方式以递增的顺序反转堆栈的最优雅的方式(更少的代码?)是什么? (非递归)

EX。

1 2 3 4 5 6 7 8 9 10

1 [3 2] 4 5 6 [10 9 8 7]

2 个答案:

答案 0 :(得分:1)

我会使用std::reverse。这对你有用吗?

http://www.cplusplus.com/reference/algorithm/reverse/

答案 1 :(得分:1)

std::stack被设计为LIFO(后进先出),因此它不是为您设计的,可以更改值的索引。 如果您必须更改项目的索引,而不是我建议使用其他列表。

enter image description here (有谁知道这个图像的原创者是谁,所以我可以给出适当的引用)