STL容器 成员函数 时间复杂度表
|
Sequence containers |
Associative containers |
|
||||||||
|
Headers |
<vector> |
<deque> |
<list> |
<set> |
|
<bitset> |
||||
|
Members |
complex |
vector |
deque |
list |
set |
multiset |
map |
multimap |
bitset |
|
|
constructor |
* |
constructor |
constructor |
constructor |
constructor |
constructor |
constructor |
constructor |
constructor |
|
|
destructor |
O(n) |
destructor |
destructor |
destructor |
destructor |
destructor |
destructor |
destructor |
||
|
operator= |
O(n) |
operator= |
operator= |
operator= |
operator= |
operator= |
operator= |
operator= |
operators |
|
|
iterators |
begin |
O(1) |
begin |
begin |
begin |
begin |
begin |
begin |
begin |
|
|
end |
O(1) |
end |
end |
end |
end |
end |
end |
end |
||
|
rbegin |
O(1) |
rbegin |
rbegin |
rbegin |
rbegin |
rbegin |
rbegin |
rbegin |
||
|
rend |
O(1) |
rend |
rend |
rend |
rend |
rend |
rend |
rend |
||
|
capacity |
size |
* |
size |
size |
size |
size |
size |
size |
size |
size |
|
max_size |
* |
max_size |
max_size |
max_size |
max_size |
max_size |
max_size |
max_size |
||
|
empty |
O(1) |
empty |
empty |
empty |
empty |
empty |
empty |
empty |
||
|
resize |
O(n) |
resize |
resize |
resize |
||||||
|
element access |
front |
O(1) |
front |
front |
front |
|||||
|
back |
O(1) |
back |
back |
back |
||||||
|
operator[] |
* |
operator[] |
operator[] |
operator[] |
operator[] |
|||||
|
at |
O(1) |
at |
at |
|||||||
|
modifiers |
assign |
O(n) |
assign |
assign |
assign |
|||||
|
insert |
* |
insert |
insert |
insert |
insert |
insert |
insert |
insert |
||
|
erase |
* |
erase |
erase |
erase |
erase |
erase |
erase |
erase |
||
|
swap |
O(1) |
swap |
swap |
swap |
swap |
swap |
swap |
swap |
||
|
clear |
O(n) |
clear |
clear |
clear |
clear |
clear |
clear |
clear |
||
|
push_front |
O(1) |
push_front |
push_front |
|||||||
|
pop_front |
O(1) |
pop_front |
pop_front |
|||||||
|
push_back |
O(1) |
push_back |
push_back |
push_back |
||||||
|
pop_back |
O(1) |
pop_back |
pop_back |
pop_back |
||||||
|
observers |
key_comp |
O(1) |
key_comp |
key_comp |
key_comp |
key_comp |
||||
|
value_comp |
O(1) |
value_comp |
value_comp |
value_comp |
value_comp |
|||||
|
operations |
find |
O(log n) |
find |
find |
find |
find |
||||
|
count |
O(log n) |
count |
count |
count |
count |
count |
||||
|
lower_bound |
O(log n) |
lower_bound |
lower_bound |
lower_bound |
lower_bound |
|||||
|
upper_bound |
O(log n) |
upper_bound |
upper_bound |
upper_bound |
upper_bound |
|||||
|
equal_range |
O(log n) |
equal_range |
equal_range |
equal_range |
equal_range |
|||||
|
unique members |
capacity |
splice |
set |
|||||||
STL容器 成员函数 时间复杂度表的更多相关文章
- STL区间成员函数及区间算法总结
STL区间成员函数及区间算法总结 在这里总结下可替代循环的区间成员函数和区间算法: 相比单元素遍历操作,使用区间成员函数的优势在于: 1)更少的函数调用 2)更少的元素移动 3)更少的内存分配 在区间 ...
- c++ STL stack容器成员函数
这是后进先出的栈,成员函数比较简单,因为只能操作栈顶的元素.不提供清除什么的函数. 函数 描述 bool s.empty() 栈是否为空(即size=0).若空,返回true,否则,false. vo ...
- STL进阶--成员函数 vs 算法
容器的成员函数 vs 算法 容器中同名的函数 List: void remove(const T); template<class Comp> void remove_if(Comp); ...
- 如何优雅的传递 stl 容器作为函数参数来实现元素插入和遍历?
问题背景 开始正文之前,做一些背景铺垫,方便读者了解我的工程需求.我的项目是一个客户端消息分发中心,在连接上消息后台后,后台会不定时的给我推送一些消息,我再将它们转发给本机的其它桌面产品去做显示.后台 ...
- c++ STL map容器成员函数
map容器用于查找,设置键值和元素值,输入键值,就能得到元素值.map对象中的元素时刻都是有序的,除非无序插入的.它是用平衡树创建的.查找很快. 函数 描述,注意有r的地方都是不能用it代替的. ma ...
- c++ STL deque容器成员函数
deque是双向队列,即可以在头部插入删除,也可以在尾部插入删除.内部并不连续,这一点和vector并不一样.可能第1个元素和第2个元素的地址是不连在一起的.在使用时用it迭代器会安全一点. 这是c+ ...
- c++ STL list容器成员函数
list是一个双链表. 函数 描述 void l.assign (int n, const val) void l.assign (it first, it last) 将链表l初始化为n个相同的va ...
- STL容器用法速查表:list,vector,stack,queue,deque,priority_queue,set,map
list vector deque stack queue priority_queue set [unordered_set] map [unordered_map] multimap [uno ...
- STL容器 erase的使用陷井
http://www.cppblog.com/beautykingdom/archive/2008/07/09/55760.aspx?opt=admin 在STL(标准模板库)中经常会碰到要删除容器中 ...
随机推荐
- streaming kafka direct 详解
http://blog.cloudera.com/blog/2015/03/exactly-once-spark-streaming-from-apache-kafka/ http://www.jia ...
- Ubuntu 与 Windows 共享文件夹
1. Ubuntu关机后 编辑虚拟机设置->option->共享文件夹->添加->确定 完成! 2.共享文件夹后在/mnt/hgfs/文件夹下无法看到共享的文件夹: 解决方法: ...
- 给 asp.net core 写一个简单的健康检查
给 asp.net core 写一个简单的健康检查 Intro 健康检查可以帮助我们知道应用的当前状态是不是处于良好状态,现在无论是 docker 还是 k8s 还是现在大多数的服务注册发现大多都提供 ...
- [Windows]获取系统版本号
1 string GetMainProgInfo() 2 { 3 string strRet; 4 TCHAR szPath[MAX_PATH]; 5 GetModuleFileName(NULL,s ...
- PAT 1071【STL string应用】
1.单case很多清空没必要的 2.string+ char 最好用pushback 3.string +string就直接+ #include <bits/stdc++.h> using ...
- 消息中间件 | 消息协议 | AMQP -- 《分布式 消息中间件实践》笔记
04年,AMQP开放标准被开发 06年,AMQP规范被发布 基本概念 Message:与平台无相关的数据. Publisher:向交换器发布消息的客户端应用程序 Excha ...
- Django2.0里model外键和一对一的on_delete参数
在django2.0后,定义外键和一对一关系的时候需要加on_delete选项,此参数为了避免两个表里的数据不一致问题,不然会报错: TypeError: __init__() missing 1 r ...
- 二,JVM 自带命令行工具之JStat
jstat:虚拟机统计信息见识工具 jstat是用于见识虚拟机各种运行状态信息的命令行工具.他可以显示本地或远程虚拟机进程中的类装载.内存.垃圾收集.JIT编译等运行数据. jstat option ...
- js车牌号校验
function cpyz(str) { var newcarnum= str.value.toUpperCase(); var regExp = /(^[\u4E00-\u9FA ...
- Storm概念学习系列之storm的设计思想
不多说,直接上干货! storm的设计思想 在 Storm 中也有对流(Stream)的抽象,流是一个不间断的.无界的连续 Tuple(Storm在建模事件流时,把流中的事件抽象为 Tuple 即元组 ...