每次忘记都去查,真难啊

 /*
C/C++解题常用STL大礼包 含vector,map,set,queue(含优先队列) ,stack的常用用法
*/ /*
vector常用用法
*/
//头文件
#include<vector> //常用的初始化方法
vector<int> v; //直接定义一个整型元素的向量 且未声明长度,其中int的位置可以换成别的数据类型或者结构体等
vector<int> v(); //定义了10个整型元素的向量,其中每一个数都没有初值
vector<int> v(, ); //定义了10个整型元素的向量,并且为每个元素赋初值5 //常用的操作
v.back(); //返回最后一个元素
v.front(); //返回第一个元素
v.clear(); //清空v中的元素
v.empty(); //判断v是否为空,空则返回true,否则false
v.push_back(); //在最后的一个元素后插入5
v.size(); //返回v中的元素的个数 sort(v.begin(), v.end(), cmp); //sort排序,其中cmp部分与结构体等数据类型自定义排序时cmp相同用法 for(int i = ; i < v.size(); i++){ //遍历
printf("%d\n", v[i]);
} /*
map常用用法
*/
//头文件
#include<map> //常用操作
map<int, int> m; //初始化
m[] = ; //以数组形式插入值
m[] = ;
m[]++; //可以参与运算
m[] += ;
cout<<m[]<<endl;
cout<<m[]<<endl; /*
set常用用法 set中的元素自动从小到大排序,且合并重复元素
*/
//头文件
#include<set> //常用操作
set<int>s; //定义
s.insert(x); //插入数值
s.clear();    //删除set容器中的所有的元素
s.empty();     //判断set容器是否为空 set<int>::iterator it; //遍历
for(it = s.begin(); it != s.end(); it++)
{
printf("%d\n", *it);
} //s.end()没有值
cout<<"s.begin() "<<*s.begin()<<endl;
//lower_bound()--返回指向大于(或等于)某值的第一个元素的迭代器
cout<<"lower_buond 3 "<<*s.lower_bound()<<endl;
//upper_bound()--返回大于某个值元素的迭代器
cout<<"upper_bound 3 "<<*s.upper_bound()<<endl;
//find()--返回一个指向被查找到元素的迭代器
cout<<"find(3) "<<*s.find()<<endl;
cout<<"s.size() "<<s.size()<<endl; /*
queue常用用法
*/
//头文件
#include<queue> //常用操作对于普通队列来说
queue<int> q; //定义一个队列
q.front(); //获取队首元素
q.pop(); //删除队首元素
q.empty(); //判断队列是否为空
q.push(); //向队列中加入元素 //priority_queue
priority_queue<int> q; //定义一个优先队列
q.top(); //获取队列中最大元素(首个)
q.pop(); //删除最大元素(队首)
q.push(x); //向队列中加入元素
q.empty(); //判断优先队列是否为空 //对于结构体而言,需要重载小于号(优先队列按照从大到小排序)
priority_queue<Node> q; struct Node{
int a, b;
bool operator < (const Node & x) const
{
return a > x.a;
}
}; /*
stack常用用法
*/
//头文件
#include<stack> //常用操作
stack<int> s; //定义一个栈
s.pop(); //删除栈顶元素
s.top(); //获取栈顶元素
s.empty(); //判断栈是否为空
s.push(); //向栈中压入5

C/C++解题常用STL大礼包 含vector,map,set,queue(含优先队列) ,stack的常用用法的更多相关文章

  1. ACM竞赛常用STL(一)

    全排列函数next_permutation STL 中专门用于排列的函数(可以处理存在重复数据集的排列问题) 头文件:#include <algorithm> using namespac ...

  2. C++标准模板库(STL)之Vector

    在C中,有很多东西需要自己实现.C++提供了标准模板库(Standard Template Libray,STL),其中封装了很多容器,不需要费力去实现它们的细节而直接调用函数来实现功能. 具体容器链 ...

  3. C++常用STL

    目录 C++ 常用STL整理 容器和配接器 list(链表) stack(栈) queue(队列) priority_queue(优先队列) set(集合) vector(向量) map&&a ...

  4. STL模板整理 vector

    一.什么是标准模板库(STL)? 1.C++标准模板库与C++标准库的关系 C++标准模板库其实属于C++标准库的一部分,C++标准模板库主要是定义了标准模板的定义与声明,而这些模板主要都是 类模板, ...

  5. 转:用STL中的vector动态开辟二维数组

    用STL中的vector动态开辟二维数组 源代码:#include <iostream>#include <vector>using namespace std;int mai ...

  6. STL中的Vector相关用法

    STL中的Vector相关用法 标准库vector类型使用需要的头文件:#include <vector>. vector 是一个类模板,不是一种数据类型,vector<int> ...

  7. [知识点]C++中STL容器之vector

    零.STL目录 1.容器之map 2.容器之vector 3.容器之set 一.前言 关于STL和STL容器的概念参见STL系列第一篇——map(见上).今天介绍第二个成员——vector. 二.用途 ...

  8. (转)C++ STL中的vector的内存分配与释放

    C++ STL中的vector的内存分配与释放http://www.cnblogs.com/biyeymyhjob/archive/2012/09/12/2674004.html 1.vector的内 ...

  9. C++STL中的vector的简单实用

    [原创] 使用C++STL中的vector, #include <stdio.h> #include<stdlib.h> #include<vector> usin ...

随机推荐

  1. 《HeadFirts设计模式》笔记

    定义 在某种情境下,针对某些问题的某种解决方案. 设计模式 1.可拓展性强,方便维护,能够应付变化. 何时使用设计模式 设计之前,还有在重构的时候. OOP 可复用,可扩充,可维护 设计模式原则 1. ...

  2. scala eval

    package com.jason case class JJ(d: Double*) object Ss { def main(args: Array[String]): Unit = { impo ...

  3. winform 通用自动更新程序

    通用自动更新程序 主要功能: 1. 可用于 C/S 程序的更新,集成到宿主主程序非常简单和配置非常简单,或不集成到主程序独立运行. 2. 支持 HTTP.FTP.WebService等多种更新下载方式 ...

  4. odoo @api.constrains _sql_constrains

    实现机制: @api.constrains('fields') 服务器启动时将模型中的所有约束方法注册到对象池中: 在create.write时会根据创建或修改的fields检查是否有对应的约束方法, ...

  5. Airtest-UI 自动化集大成者

    前言 Airtest是由网易研发的一款基于Python的.跨平台的UI自动化测试框架,基于图像识别原理,适用于游戏和App.该项目目前已在Github上面开源: https://github.com/ ...

  6. python项目文件夹

    项目的文件夹 conf 用于存放配置文件的文件夹 core 核心业务代码 .py interface 接口, 接口内写获取数据前的逻辑代码,通过后才能获取数据 db 目前我们用于存放文件信息的 lib ...

  7. python入门之函数对象

    目录 函数是第一类对象 1.函数名可以被引用 2.函数名可以当做参数传递 3.函数名可以当做返回值使用 4.函数名可以被当做容器类型的元素 函数是第一类对象 First-Class Object : ...

  8. flowable ui 界面请假流程操作实例

    如题,网上的教程多是代码居多,UI界面操作实例那更是一页难求,楼主分享下几天来的入坑经历,希望有需要了解,但是不知道去哪里了解的小伙伴,看完我的文章后能有所启发,文章有不足之处还请指正,若有相关问题请 ...

  9. 大一0基础小白用最基础C写哥德巴赫猜想

    #include <stdio.h>int main (){ int a,b,c,k,count1,count2; for(a=4;a<=1200;a=a+2){ for(b=2;b ...

  10. bootstrap使用笔记

    本文翻译自[http://getbootstrap.com/2.3.2/scaffolding.html#gridSystem] 1.需要在H5的文档声明中使用: 2.如下一个简单的两列布局,先添加一 ...