首页 > 试题广场 >

以下哪种STL容器中的对象是连续存储的:()

[单选题]
以下哪种STL容器中的对象是连续存储的:()
  • list
  • vector
  • map
  • set
推荐
【正确答案】B
【解析】vector 是一种动态数组,在内存中具有连续的存储空间。
A 选项 list 是采用双向链表实现的,内存不连续。
C D 选项 map 和 set 都是采用红黑树实现的,内存不连续。
 
vector知识点讲解】
更多C++基础专业知识讲解,点击链接即可查看
https://www.nowcoder.com/link/zxyl-cpp44
编辑于 2021-11-17 15:57:19 回复(0)
vector的实现是是同个一个连续的数组存放元素。
发表于 2016-05-05 10:03:48 回复(0)
只有dqeue和vector是连续存储的
发表于 2017-03-20 21:20:52 回复(1)
List封装了链表,Vector封装了数组, list和vector得最主要的区别在于:
vector使用连续内存存储的,他支持[]运算符,而list是以链表形式实现的,不支持[]。
Map,Set属于标准关联容器,使用了非常高效的平衡检索二叉树:红黑树,
他的插入删除效率比其他序列容器高是因为不需要做内存拷贝和内存移动,而直接替换指向节点的指针即可。
发表于 2018-02-06 19:59:10 回复(0)
只有dqeue和vector是连续存储的
发表于 2016-07-13 08:38:05 回复(4)
只有vector保证其元素的存储空间是连续的。可以参考http://blog.csdn.net/hackbuteer1/article/details/6791260。 http://www.cppblog.com/jinq0123/archive/2008/04/23/storagecontiguity.html?opt=admin
发表于 2017-07-25 15:19:58 回复(0)
vector连续的,不够位置时会成倍增加空间,整体数据复制到新空间中
发表于 2021-04-16 16:40:59 回复(0)
List封装了链表,Vector封装了数组
发表于 2019-02-18 17:22:46 回复(0)
就是说整个stl就一个连续的咯
发表于 2016-10-19 13:46:48 回复(0)