如何用Stacks实现Queue
这篇文章主要讲解了“如何用Stacks实现Queue”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用Stacks实现Queue”吧!
成都一家集口碑和实力的网站建设服务商,拥有专业的企业建站团队和靠谱的建站技术,十余年企业及个人网站建设经验 ,为成都近千家客户提供网页设计制作,网站开发,企业网站制作建设等服务,包括成都营销型网站建设,品牌网站建设,同时也为不同行业的客户提供成都做网站、成都网站设计的服务,包括成都电商型网站制作建设,装修行业网站制作建设,传统机械行业网站建设,传统农业行业网站制作建设。在成都做网站,选网站制作建设服务商就选成都创新互联公司。
题目:用Stacks实现Queue。
思路:Queue是先进先出FIFO,Stack是先进后出FILO。使用Stack模拟实现Queue的功能,可以使用两个Stack,一个进行入Stack操作,一个进行出Stack操作。这两个Stack中的元素位置是颠倒的。比如,一个元素在第一个Stack位于Stack头,那么这个元素在另一个Stack则位于Stack尾。
Language : cpp
class MyQueue {public: stackinput, output;/** Push element x to the back of queue. */void push(int x) { input.push(x); }/** Removes the element from in front of queue and returns that element. */int pop() {int a = peek(); output.pop();return a; }/** Get the front element. */int peek() {if(output.empty()){while(input.size()){ output.push(input.top()); input.pop(); } }return output.top(); }/** Returns whether the queue is empty. */bool empty() {return input.empty() && output.empty(); } };/** * Your MyQueue object will be instantiated and called as such: * MyQueue obj = new MyQueue(); * obj.push(x); * int param_2 = obj.pop(); * int param_3 = obj.peek(); * bool param_4 = obj.empty(); */
感谢各位的阅读,以上就是“如何用Stacks实现Queue”的内容了,经过本文的学习后,相信大家对如何用Stacks实现Queue这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!
本文标题:如何用Stacks实现Queue
本文路径:http://cdiso.cn/article/pidcds.html