标签:
Implement the following operations of a queue using stacks.
push to top, peek/pop from top, size, and is empty operations are valid.
#include<iostream>
#include<stack>
using namespace std;
stack<int> sta1;
stack<int> sta2;
// Push element x to the back of queue.
void push(int x) {
sta1.push(x);
}
// Removes the element from in front of queue.
void pop(void) {
while(!sta1.empty())
{
sta2.push(sta1.top());
sta1.pop();
}
sta2.pop();
while(!sta2.empty())
{
sta1.push(sta2.top());
sta2.pop();
}
}
// Get the front element.
int peek(void) {
while(!sta1.empty())
{
sta2.push(sta1.top());
sta1.pop();
}
int a=sta2.top();
while(!sta2.empty())
{
sta1.push(sta2.top());
sta2.pop();
}
return a;
}
// Return whether the queue is empty.
bool empty(void) {
if(sta1.empty())
return 1;
else
return 0;
}
int main()
{
}
leetcode_232——Implement Queue using Stacks(栈与队列)
标签:
原文地址:http://www.cnblogs.com/yanliang12138/p/4655577.html