欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

常用STL

程序员文章站 2022-07-12 16:40:43
...

vector

有迭代器 可随机访问

vector x; int t;

  1. x.push_back(t); //把t插入到x的尾部

  2. x.pop(); // 删除x的最后一个元素

  3. x,empty(); // x是否为空 是返回true 否返回flase

  4. x.clear(); //清空x

  5. x.size(); //x的长度(元素个数)

  6. x.begin(); //返回第一个元素的迭代器
    x.end(); //返回最后一个元素下一个位置的迭代器
    即二者是一个前闭后开区间

  7. x.front() //返回x的第一个元素
    x.back() //返回x的最后一个元素

set & multiset

有迭代器 不可随机访问 自动按ASCII码排序

set --> 有序集合 不重复 //类比数学中集合的互斥性

multiset --> 多重有序集合 即可重复

set x ; multiset y ; int t;

  1. x.insert(t) //插入一个元素 二者用法相同
  2. x.find(t) //查询t是否存在 存在则返回指向该元素的迭代器 否则 返回
    x.end()
    3. x.count(t) //返回元素t的个数
    4. clear() size() empty() x.begin() x.end(); 与vector类似

stack  先入后出

没有迭代器 不可随机访问

stack x ; int t ;
1. x.push(t) ; //向栈顶插入t 注意: 尾部叫做栈顶
2. x.pop(t) ; //删除栈顶元素
3. size() empty() 与vector类似 但没有clear() 操作

queue  先入先出 (循环队列)

没有迭代器 不可随机访问

queue x ; int t;
1. x.front() //返回队头元素
2. x.pop() //将队头弹出 即删除最先进入的元素
3. x.push(t) //将t插入队尾
4. x.back() //返回队尾元素
5. size() empty() 与vector类似 但没有clear() 操作

上一篇: 数组巧用

下一篇: STL常用算法