社区
C++ 语言
帖子详情
C++中map的size操作时间复杂度?
kestre1
2010-11-15 12:09:41
RE,请达人指教
...全文
1273
9
打赏
收藏
C++中map的size操作时间复杂度?
RE,请达人指教
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kestre1
2010-11-16
打赏
举报
回复
OK,LS多谢各位
libinfei8848
2010-11-15
打赏
举报
回复
0(1)
qq120848369
2010-11-15
打赏
举报
回复
你插入一个东西就+1,当然是O(1)的,没有压力.
gules
2010-11-15
打赏
举报
回复
1
map的size操作的时间复杂度是O(1)(常数时间)。
STL的map的底层实现是红黑树,STL的红黑树实现中维护了一个node_count之类的簿记变量,用以计算节点数。
liutengfeigo
2010-11-15
打赏
举报
回复
用的时候纠结这个了?
staare
2010-11-15
打赏
举报
回复
打个断点进去看嘛
失落的凡凡
2010-11-15
打赏
举报
回复
任何一个有尊严的实现都会是O(1)
GoonYangXiaofang
2010-11-15
打赏
举报
回复
[Quote=引用 3 楼 gules 的回复:]
map的size操作的时间复杂度是O(1)(常数时间)。
STL的map的底层实现是红黑树,STL的红黑树实现中维护了一个node_count之类的簿记变量,用以计算节点数。
[/Quote]
看 map 的具体实现
size() 函数经常调用,不会再每次调用时都遍历整个树以获取 size,而是用一个成员变量记录 size
C++
语言基础视频教程
C++
语言基础视频培训课程:本课与主讲者在大学开出的程序设计课程直接对接,准确把握知识点,注重教学视频与实践体系的结合,帮助初学者有效学习。本教程详细介绍
C++
语言
中
的封装、数据隐藏、继承、多态的实现等入门知识;主要包括类的声明、对象定义、构造函数和析构函数、运算符重载、继承和派生、多态性实现等。课程需要有C语言程序设计的基础(可以利用本人开出的《C语言与程序设计》系列课学习)。学习者能够通过实践的方式,学会利用
C++
语言解决问题,具备进一步学习利用
C++
开发应用程序的基础。
C++
std::list
中
size
()的
时间复杂度
通常情况下_GLIBCXX_USE_CXX11_ABI是非0的,也就是说
C++
11
中
size
的
时间复杂度
是O(1),但当系统
中
需要混用不同版本的GCC编译的库时,必须将_GLIBCXX_USE_CXX11_ABI设置为0以保证ABI兼容,这种情况下
size
的
时间复杂度
是O(n)。可以发现,当_GLIBCXX_USE_CXX11_ABI=0时,
size
的
时间复杂度
是O(n),否则为O(1)。C98
中
size
()的
时间复杂度
是O(N),
C++
11
中
正常配置下,是O(1),其它情况下是O(N)...
C++
STL
map
基础知识
一、
时间复杂度
O(logn) 二、优点 可使用键作为下标来获取一个值。请注意:关联的本质在于元素的值与某个特定的键相关联,而并非通过元素在数组
中
的位置来获取。 三、头文件 #include<
map
> 四、
操作
方法 定义
map
<int,string>
map
1; //默认为空 访问方法
map
<string,int> mp ; mp["hello"] = 8 ; mp["hello"] = 100 ; mp["aloha"
【算法】
C++
STL容器
时间复杂度
|
时间复杂度
计算|常见排序算法及其
时间复杂度
...
目录 常见排序算法及其
时间复杂度
C++
STL容器
时间复杂度
|
map
, set, multi
map
, and multiset hash_
map
, hash_set, hash_multi
map
, and hash_multiset 程序的
时间复杂度
计算 计算
时间复杂度
--(简单版) 常见排序算法及其
时间复杂度
常见排序算法及其时间...
C++
:
map
、hash_
map
、unordered_
map
面试经常被问的问题之一,便是
map
和hash_
map
的区别,以及什么时候用
map
什么时候用hash_
map
。另外也了解到还有
C++
11的unordered_
map
,所以这里一并介绍三个了。用法就不介绍了,主要介绍区别。 1. 三者的区别
map
底层是用红黑树实现的,空间复杂度为O(n),是随着节点的增加才增加,而查找的时间
时间复杂度
则固定是O(log(n))了。因为红黑树本来...
C++ 语言
64,649
社区成员
250,477
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章