假设我们在 C++ 中使用 STL 堆栈和队列
Stack: [1 2 3 4 5] <=>
Queue: => [5 4 3 2 1] =>
递归检查数据条目在内容和顺序方面是否相同的最优雅方法是什么?假设上面显示的堆栈和队列具有相同的数据和相同的顺序。
我在概念上理解该做什么时遇到问题,因为数据 pop() 的顺序相反。
最佳答案
部分递归的解决方案是递归地将队列中的所有元素弹出到辅助堆栈中,然后检查辅助堆栈和原始堆栈是否相同。此检查也可以递归地完成。
关于c++ - 比较队列和堆栈的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15176970/