STL的queue

  本篇文章之所以诞生,是由于在刷PAT时需要掌握STL模板库,所以特意测试学习了常用的方法。仅适用于G++环境下的单线程单文档情况。对于多文档多线程情况不保证正确性。如果你是只想在数据结构与算法比赛中多拿一些AC而学习STL,小码农自认它还是挺好的。如果是项目需要而学习STL,还是建议读官方文档。
  如果你觉得博文状态下阅读费劲,可以去我的github下载源码。如果出现对不齐的情况,把编辑器Tab键缩进设置成4个就可以了。欢迎指点评论。

#include <bits/stdc++.h>
using namespace std;
/*
    下面的注释: 
        1)DT : data type 
*/
/*
    由于队列是FIFO结构,所以不存在迭代器,且只能在队列首尾进行操作。 
*/
int main()
{
    /*
        1、创建:
            默认创建:                   queue<int> q1;
            拷贝创建:                   queue<int> q2(ano);
    */
    queue<int> q1;
    queue<int> q2(q1);

    /*
        2、插入:void push()
    */
    for(int i = 0; i < 10; i++)
        q1.push(i);

    /*
        3、访问但不删除队首元素:DT front(); 
    */
    cout << q1.front() << endl;
    /*  Console:            0                   */

    /*
        4、删除但不访问队首元素:void pop(); 
    */
    q1.pop();
    cout << q1.front() << endl;
    /*  Console:            1                   */

    /*
        5、判断是否为空:bool empty(); 
    */
    cout << q1.empty() << " " << q2.empty() << endl;
    /*  Console:            0 1                     */ 

    /*
        6、队列中元素的个数:int size() 
    */
    cout << q1.size() << endl;
    /*  Console:            9                   */ 
    return 0;
} 

猜你喜欢

转载自blog.csdn.net/qq_38206090/article/details/81321854
今日推荐