zoukankan      html  css  js  c++  java
  • C++ STL栈和队列

    在C++标准库(STL)中,实现了栈和队列,方便使用,在这里我整理了一下笔记,作简要介绍。

    1,栈(stack):

    头文件 : #include<stack>

    定义栈 :stack<Type> s; 其中Type为数据类型(如 int,float,char)。

    主要操作:

    s.push(item); //将item压入栈顶

    s.pop(); //删除栈顶的元素,但不会返回

    s.top(); //返回栈顶的元素,但不会删除

    s.size(); //返回栈中元素的个数

    s.empty(); //检查栈是否为空,如果为空返回true,否则返回false

    2,队列(queue):

    头文件 : #include<queue>

    定义队列: queue<Type> q; 其中Type为数据类型(如 int,float,char)。

    主要操作:

    q.push(item) //将item压入队列尾部

    q.pop() //删除队首元素,但不返回

    q.front() //返回队首元素,但不删除

    q.back() //返回队尾元素,但不删除

    q.size() //返回队列中元素的个数

    q.empty() //检查队列是否为空,如果为空返回true,否则返回false

     

     

    3,双端队列

    头文件:#include <deque>deq 

    定义双端队列:deque<Type> deq 其中Type为数据类型(如 int,float,char)

    deq.assign(n,elem) 赋值n个元素的拷贝给双端队列

    deq.assign(beg,end) 赋值一段迭代器的值给双端队列

    deq.push_front(elem) 添加一个元素在开头

    deq.push_back(elem) 添加一个元素在结尾

    deq.pop_front() 删除第一个元素

    deq.pop_back() 删除最后一个元素

    deq.at(index) 取固定位置的元素

    deq[index] 取固定位置的元素

    deq.front() 返回第一个元素(不检测容器是否为空)

    deq.back() 返回最后一个元素(不检测容器是否为空)

     

     

     

  • 相关阅读:
    关于JavaWeb项目汉字乱码问题
    使用pipenv
    python使用imap-tools模块下载邮件中的附件
    Python新增功能, 函数的参数类型提示.
    centos83+django3.1+ASGI+nginx部署.
    python3.9 pip本身的升级
    windows+django3.1+ASGI+nginx部署
    k8s 单节点开发环境用hostPath配置mysql的持久化存储
    Rust的设计中为什么要区分不可变变量和常量?
    Vscode + Python + Django开发环境常见问题
  • 原文地址:https://www.cnblogs.com/wkfvawl/p/8666192.html
Copyright © 2011-2022 走看看