STL使用记录
1,map
对map实在不熟。。。赶紧记录一下用法吧。
后来再发现新的用法再补充吧
定义: map<int, int> m;
其中的int可以为自定义的任何类型。
m[key值类型的变量] = value值;
但是注意如果key值是自定义的结构体的话,一定要重载一下小于号的运算符。这个是map的要求,key对应的类型一定要可以比较的。
2,优先队列
定义:qriority_queue<int, vector<int>, cmp> q;
一直把这货当heap在用。
其中黑体字可以为任何类型(包括自定义类型)
cmp是自己写的比较函数,因为我一直不记得大根堆和小根堆是用哪个词,所以就干脆自己写比较函数了。
注意堆内元素是不能直接修改的,要改只能先取出来,改完再放回去。
q.size() 返回堆中元素个数
q.empty() 返回堆中是否为空,为空则返回true
q.push(x) 将元素x放入堆中
q.top() 返回堆顶元素
q.pop() 弹出堆顶元素
3,set
s.begin() 返回容器中的第一个元素
s.end() 返回容器中的最后一个元素
s.clear() 字面意思(删除容器内元素)
s.empty() 判断容器是否为空
s.size() 返回容器内元素个数
set <node> :: iterator pre = S.lower_bound(t); 返回集合中第一个大于等于t的数的位置
set <node> :: iterator nxt = S.upper_bound(t); 返回集合中第一个大于t的数的位置
这篇文章咕了……等ww3113306好好学习一下STL再来开篇新的吧
STL使用记录的更多相关文章
- stl学习记录(1)
Effective STL 中文版学习记录 条款4 判断容器是否为空 使用empty而不是size().size()操作在实现上不是一个时间常数操作条款5 尽量使用区间成员函数代替它们的单元素兄弟.S ...
- c++ STL 学习记录 草稿。
非常丑陋的尝试实现stl.慢慢修改吧. 1)简单实现 vector和list. 2)思索如何开始编写算法. 1,所有容器继承一个抽象容器.那么算法就可以使用抽象基类的next方法来遍历元素. 容器间耦 ...
- C++ STL 简单记录
1,STL提供三种类型的组件:容器.迭代器.算法. 容器: 顺序容器(vector.list.deque.string等)是一系列元素的有序集合: 关联容器(set.multiset.map.mult ...
- stl学习记录(2)
#include <iostream> #include <utility> #include <tuple> #include <complex> # ...
- STL(常用)
STL 简单记录.讲解一些初级阶段常用的用法. STL是C++的一个标准模板库,其中包含了许多在计算机领域常用的基本数据结构以及基本算法.STL主要依赖于模板,使得STL具有广泛的通用性.这篇文章旨在 ...
- Linux 动态链接库
如何使用动态链接库 Linux下打开使用动态链接库需要三步(实际上和windows下基本一样):1.加载动态链接库,通过调用库函数dlopen()获得链接库的句柄,对应于windows下的 AfxLo ...
- Linux 动态链接库 - dll劫持
如何使用动态链接库 Linux下打开使用动态链接库需要三步(实际上和windows下基本一样):1.加载动态链接库,通过调用库函数dlopen()获得链接库的句柄,对应于windows下的 AfxLo ...
- 【Noip模拟 20160929】花坛迷宫
题目描述 圣玛格丽特学园的一角有一个巨大.如迷宫般的花坛.大约有一个人这么高的大型花坛,做成迷宫的形状,深受中世纪贵族的喜爱.维多利加的小屋就坐落在这迷宫花坛的深处.某一天早晨,久城同学要穿过这巨大的 ...
- STL hashtable阅读记录
unordered_map,unordered_set等相关内容总结: unordered_map和unordered_set是在开发过程中常见的stl数据结构.其本质是hashtable.在SGI_ ...
随机推荐
- VIO 初始化小结 - 10.17
最近几个月忙于博士毕业,找工作一直没有继续更新博客,希望以这一篇开始,每个月能够继续有几篇总结博客. 首先review一下比较著名的vio系统 Tightly coupled EKF: mainly ...
- 电子质检报告系统v3.8
南京转折点信息是太阳升软件全资子公司,一家专业从事医药软件开发的医药软件企业. 根据新版GSP支持医药企业药品质检报告电子化的要求及国家药监局的解释:供货商提供的加盖企业电子印章的电子药品检验报告与纸 ...
- 02-JVM内存模型:虚拟机栈与本地方法栈
一.虚拟机栈(VM Stack) 1.1)什么是虚拟机栈 虚拟机栈是用于描述java方法执行的内存模型. 每个java方法在执行时,会创建一个“栈帧(stack frame)”,栈帧的结构分为“局部变 ...
- WPF & EF & Prism useful links
Prism Attributes for MEF https://msdn.microsoft.com/en-us/library/ee155691%28v=vs.110%29.aspx Generi ...
- 使用jenkins构建一个自由风格的项目
一.创建一个freestyle风格的构建项目 二.输入任务名称和选择任务类型 三.配置项目 3.1:选择代码托管 3.2:到gitlab上去配置deploy key 3.3:到jenkins服务器去生 ...
- Siki_Unity_1-3_Unity零基础入门_古迹探险
1-3 Unity零基础入门 古迹探险 任务1/2:资料下载 链接:https://pan.baidu.com/s/1jHVymNk 密码:rbob 任务3:工程的创建和打开 Project:古迹探险 ...
- 【转】MMORPG游戏服务器技能系统设计:表格字段与技能程序框架
本文主要从一个程序员的角度阐述一下mmorpg服务器技能系统的程序框架设计,最近在做这个,就当做一个总结吧,其中某些概念可能没有解释清楚,欢迎大家拍砖讨论~ 技能其实是战斗系统的一个组成部分,战斗基本 ...
- 最短路径算法(II)
什么??你问我为什么不在一篇文章写完所有方法?? Hmm…其实我是想的,但是博皮的加载速度再带上文章超长图片超多的话… 可能这辈子都打不开了吧… 上接https://www.cnblogs.com/U ...
- “Hello World!团队”Alpha发布—视频链接+文案+美工
视频链接:http://v.youku.com/v_show/id_XMzEyNjc2MTAyOA==.html?sharefrom=iphone&sharekey=5378037f8b710 ...
- LintCode-61.搜索区间
搜索区间 给定一个包含 n 个整数的排序数组,找出给定目标值 target 的起始和结束位置. 如果目标值不在数组中,则返回[-1, -1] 样例 给出[5, 7, 7, 8, 8, 10]和目标值t ...