C++ Queue(队列)
c++ 优先队列(priority_queue)C++ Stack(栈)
C++ Queue(队列)
在计算机科学领域,我们致力于各种程序。他们每个人都有自己的域和实用程序。根据程序创建的目的和环境,我们有大量数据结构可供选择。其中之一就是“队列”。在讨论这种数据类型之前,让我们看一下它的语法。
语法template
应用程序区域中的队列隐含为容器适配器。
容器应支持以下操作列表:
empty
size
push_back
pop_front
front
back
模板参数T:参数指定容器适配器将保留的元素的类型。
Container:参数指定容器的内部对象,其中保留队列的元素。
成员类型下面给出了队列成员类型的列表,并对其进行了简短描述。
成员类型描述value_type指定了元素类型。container_type指定了底层容器类型。size_type它指定元素的大小范围。reference它是容器的引用类型。const_reference它是常量容器的引用类型。函数借助函数,可以在编程领域中使用对象或变量。队列提供了大量可以在程序中使用或嵌入的函数。相同的列表如下:
函数描述(constructor)该函数用于构造队列容器。empty该函数用于测试队列是否为空。如果队列为空,则该函数返回true,否则返回false。size该函数返回队列中元素的个数。front该函数返回第一个元素。元素起着非常重要的作用,因为所有的删除操作都是在front元素上执行的。back该函数返回最后一个元素。该元素起着非常重要的作用,因为所有插入操作都在后面元素上执行。push该函数用于在末尾插入一个新元素。pop该函数用于删除第一个元素。emplace该函数用于在当前后元素上方的队列中插入新元素。swap该函数用于交换参考中两个容器的内容。relational operators非成员函数指定队列所需的关系运算符。uses allocator
#include
#include
using namespace std;
void showsg(queue
{
queue
while (!ss.empty())
{
cout << '\t' << ss.front();
ss.pop();
}
cout << '\n';
}
int main()
{
queue
fquiz.push(10);
fquiz.push(20);
fquiz.push(30);
cout << "队列fquiz是 : ";
showsg(fquiz);
cout << "\nfquiz.size() : " << fquiz.size();
cout << "\nfquiz.front() : " << fquiz.front();
cout << "\nfquiz.back() : " << fquiz.back();
cout << "\nfquiz.pop() : ";
fquiz.pop();
showsg(fquiz);
return 0;
}输出:
队列fquiz是 : 10 20 30
fquiz.size() : 3
fquiz.front() : 10
fquiz.back() : 30
fquiz.pop() : 20 30c++ 优先队列(priority_queue)C++ Stack(栈)