读书人

怎么用两个栈实现一个队列

发布时间: 2012-02-07 17:45:37 作者: rapoo

如何用两个栈实现一个队列
如题,求最优解。谢谢~

[解决办法]
思路:
假设两个栈 a 和b,且都为空。
可以认为栈 a 为提供入队列的功能,栈 b 提供出队列的功能。
入队列: 入栈 a
出队列:
1 如果栈b 不为空,直接弹出栈 b 的数据。
2 如果栈 b 为空,则依次弹出栈 a 的数据,放入栈 b 中,再弹出栈 b 的数据。

读书人网 >C++

热点推荐