C++ STL 中的队列 push() 和 pop()
队列是一种以先进先出 (FIFO)类型的排列方式运行的容器。元素插入到后端(末尾)并从队列的前端删除。
队列::推()
push()函数用于在队列后面插入一个元素。这是 C++ 标准模板库 (STL) 的内置函数。该函数属于
句法 :
queuename.push(value)
参数:要插入的元素的值作为参数传递。
结果:添加一个与队列后面传递的参数值相同的元素。
例子:
Input : myqueue
myqueue.push(6);
Output : 6
Input : myqueue
myqueue.push(0);
myqueue.push(1);
Output : 0, 1
错误和异常:
- 如果传递的值与队列类型不匹配,则显示错误。
- 如果参数不抛出任何异常,则不显示异常抛出保证。
CPP
// CPP program to illustrate
// Implementation of push() function
#include
#include
using namespace std;
int main()
{
// Empty Queue
queue myqueue;
myqueue.push(0);
myqueue.push(1);
myqueue.push(2);
// Printing content of queue
while (!myqueue.empty()) {
cout << ' ' << myqueue.front();
myqueue.pop();
}
}
CPP
// CPP program to illustrate
// Implementation of pop() function
#include
#include
using namespace std;
int main()
{
// Empty Queue
queue myqueue;
myqueue.push(0);
myqueue.push(1);
myqueue.push(2);
// queue becomes 0, 1, 2
myqueue.pop();
myqueue.pop();
// queue becomes 2
// Printing content of queue
while (!myqueue.empty()) {
cout << ' ' << myqueue.front();
myqueue.pop();
}
}
CPP
// CPP program to illustrate
// Application of push() and pop() function
#include
#include
using namespace std;
int main()
{
// Empty Queue
int c = 0;
queue myqueue;
myqueue.push(5);
myqueue.push(13);
myqueue.push(0);
myqueue.push(9);
myqueue.push(4);
// queue becomes 5, 13, 0, 9, 4
// Counting number of elements in queue
while (!myqueue.empty()) {
myqueue.pop();
c++;
}
cout << c;
}
输出
0 1 2
Note: Here, output is printed on the basis of FIFO property.
队列::pop()
pop()函数用于从队列的前面删除一个元素(队列中最旧的元素)。这是 C++ 标准模板库 (STL) 的内置函数。该函数属于
句法 :
queuename.pop()
参数:不传递参数
结果:删除队列中最旧的元素或基本上是最前面的元素。
例子:
Input : myqueue = 1, 2, 3
myqueue.pop();
Output : 2, 3
Input : myqueue = 3, 2, 1
myqueue.pop();
Output : 2, 1
错误和异常:
- 如果传递了参数,则显示错误。
- 如果参数不抛出任何异常,则不显示异常抛出保证。
CPP
// CPP program to illustrate
// Implementation of pop() function
#include
#include
using namespace std;
int main()
{
// Empty Queue
queue myqueue;
myqueue.push(0);
myqueue.push(1);
myqueue.push(2);
// queue becomes 0, 1, 2
myqueue.pop();
myqueue.pop();
// queue becomes 2
// Printing content of queue
while (!myqueue.empty()) {
cout << ' ' << myqueue.front();
myqueue.pop();
}
}
输出
2
Note: Here, output is printed on the basis of FIFO property.
应用:push() 和 pop()
给定多个整数,将它们添加到队列中,并在不使用 size函数的情况下找到队列的大小。
Input : 5, 13, 0, 9, 4
Output: 5
算法: 1.将给定的元素一一推送到队列容器中。
2. 不断弹出队列的元素,直到队列变空,并增加计数器变量。
3. 打印计数器变量。
CPP
// CPP program to illustrate
// Application of push() and pop() function
#include
#include
using namespace std;
int main()
{
// Empty Queue
int c = 0;
queue myqueue;
myqueue.push(5);
myqueue.push(13);
myqueue.push(0);
myqueue.push(9);
myqueue.push(4);
// queue becomes 5, 13, 0, 9, 4
// Counting number of elements in queue
while (!myqueue.empty()) {
myqueue.pop();
c++;
}
cout << c;
}
输出
5