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() 返回最后一个元素(不检测容器是否为空)

     

     

     

  • 相关阅读:
    input file 多张图片上传 获取地址 ——fileReader
    15个常用的javaScript正则表达式
    sublime-emmet
    AMD-requireJS
    jQuery-lazyload参数
    easyui 查询条件form 数据遍历
    导出excel设置金额格式
    html5页面添加时间戳
    创建枚举
    定义实体转json需要方法
  • 原文地址:https://www.cnblogs.com/wkfvawl/p/8666192.html
Copyright © 2011-2022 走看看