当前位置:网站首页>C++ STL容器篇
C++ STL容器篇
2020-11-10 08:45:00 【osc_dh3qbz0a】
| 容器 | 底层数据结构 | 时间复杂度 | 有无序 | 可不可重复 | 其他 |
|---|---|---|---|---|---|
| array | 数组 | 随机读改O(1) | 无序 | 可重复 | 支持随机访问 |
| vector | 数组 | 随机读改、尾部插入、尾部删除O(1),头部插入、头部删除O(n) | 无序 | 可重复 | 支持随机访问 |
| deque | 双端队列 | 头尾插入、头尾删除 O(1) | 无序 | 可重复 | 一个中央控制器 + 多个缓冲区,支持首尾快速增删,支持随机访问 |
| forward_list | 单向链表 插入、删除 O(1) | 无序 | 可重复 | 不支持随机访问 | |
| list | 双向链表 | 插入、删除 O(1) | 无序 | 可重复 | 不支持随机访问 |
| stack | deque / list | 顶部插入、顶部删除 O(1) | 无序 | 可重复 | deque 或 list 封闭头端开口,不用 vector 的原因应该是容量大小有限制,扩容耗时 |
| queue | deque / list | 尾部插入、头部删除 O(1) | 无序 | 可重复 | deque 或 list 封闭头端开口,不用 vector 的原因应该是容量大小有限制,扩容耗时 |
| priority_queue | vector + max-heap | 插入、删除 O(log2n) | 有序 | 可重复 | vector容器+heap处理规则 |
| set | 红黑树 | 插入、删除、查找 O(log2n) | 有序 | 不可重复 | |
| multiset | 红黑树 | 插入、删除、查找 O(log2n) | 有序 | 可重复 | |
| map | 红黑树 | 插入、删除、查找 O(log2n) | 有序 | 不可重复 | |
| multimap | 红黑树 | 插入、删除、查找 O(log2n) | 有序 | 可重复 | |
| unordered_set | 哈希表 | 插入、删除、查找 O(1) 最差 O(n) | 无序 | 不可重复 | |
| unordered_multiset | 哈希表 | 插入、删除、查找 O(1) 最差 O(n) | 无序 | 可重复 | |
| unordered_map | 哈希表 | 插入、删除、查找 O(1) 最差 O(n) | 无序 | 不可重复 | |
| unordered_multimap | 哈希表 | 插入、删除、查找 O(1) 最差 O(n) | 无序 | 可重复 |
版权声明
本文为[osc_dh3qbz0a]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4403720/blog/4710495
边栏推荐
- Seam engraving algorithm: a seemingly impossible image size adjustment method
- 编码风格:Mvc模式下SSM环境,代码分层管理
- [论文阅读笔记] Large-Scale Heterogeneous Feature Embedding
- [论文阅读笔记] RoSANE, Robust and scalable attributed network embedding for sparse networks
- About CentOS start error: the solution of failed to start crash recovery kernel arming
- 树莓派鼓捣记 - 设置 wifi
- leetcode之最后一个单词的长度
- Android quick shutdown app
- 利用尾巴作为时间序列进行处理来识别鲸鱼
- js解决浏览器打印自动分页的问题
猜你喜欢

The length of the last word in leetcode

CSDN bug7: to be added

C++异常实现机制

从零开始学习 YoMo 系列教程:开篇

Three ways to solve coursera video unable to watch

分布式文档存储数据库之MongoDB索引管理

浅谈字节最新开源联邦机器学习平台Fedlearner

Promote China manufacturing upgrade, 3D visualization of production line in automobile assembly workshop

delete、truncate、drop 有什么区别,误删数据怎么办

CSDN bug4: to be added
随机推荐
树莓派鼓捣记 - 设置 wifi
编码风格:Mvc模式下SSM环境,代码分层管理
selenium webdriver使用click一直失效问题的几种解决方法
CSDN bug9: to be added
csdn bug5:待加
CUDA_ Global memory and access optimization
day85:luffy:购物车根据有效期不同切换价格&购物车删除操作&价格结算&订单页面前戏
An unsafe class named unsafe
[论文阅读笔记] A Multilayered Informative Random Walk for Attributed Social Network Embedding
Graph undirected graph
小度“破圈”提速,IoT迎来新故事
Youtube订阅——解决在弹窗内使用Youtube订阅按钮高度显示不全的问题
Only options request is sent, no post solution is sent
Self writing performance testing tool (2)
自己上手写性能测试工具(二)
The solution of polar experience insensitive verification
编码风格:Mvc模式下SSM环境,代码分层管理
仅发送options请求,没有发送post解决方案
If you need a million objects
浅谈字节最新开源联邦机器学习平台Fedlearner