首页 > 其他 > 详细

232. 用栈实现队列

时间:2020-04-11 23:29:18      阅读:83      评论:0      收藏:0      [点我收藏+]
 1 class MyQueue 
 2 {
 3     stack<int> s1,s2;
 4 public:
 5     MyQueue() {}
 6     
 7     void push(int x) 
 8     {
 9         s1.push(x);
10     }
11     
12     int pop() 
13     {
14         while(!s1.empty())
15         {
16             s2.push(s1.top());
17             s1.pop();
18         }
19         int temp = s2.top();
20         s2.pop();
21 
22         while(!s2.empty())//这里不可以用swap(s1,s2)
23         {
24             s1.push(s2.top());
25             s2.pop();
26         }
27         return temp;
28     }
29 
30     int peek() 
31     {
32         while(!s1.empty())
33         {
34             s2.push(s1.top());
35             s1.pop();
36         }
37         int temp = s2.top();
38 
39         while(!s2.empty())
40         {
41             s1.push(s2.top());
42             s2.pop();
43         }
44         return temp;
45     }
46     
47     bool empty() 
48     {
49         return s1.empty();
50     }
51 };

 

232. 用栈实现队列

原文:https://www.cnblogs.com/yuhong1103/p/12682998.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!