首页 > 试题广场 > 以下哪个容器的删除操作会进行内存的移动
[单选题]
以下哪个容器的删除操作会进行内存的移动
  • map
  • list
  • set
  • vector

4个回答

添加回答
vector是利用数组存放元素,当前面有元素被删除的时候后面的元素都向前移动一格,所以会进行内存的移动。
链表删除元素的时候,无论是双向还是单向只需改变指针的指向即可(L->next,不需要对L->data进行移动)。
map、set底层实现都是rb_tree,但是本质上是树,故其具体实现仍然是链表,删除元素的时候,只需改变其指针即可。
编辑于 2018-09-14 13:56:57 回复(0)
vector是连续存储在内存上的数组,删除某个数组元素的确有影响
发表于 2018-09-13 23:30:47 回复(0)
list有基于数组实现的,有基于链表实现的。。用链表实现的list在删除时不会进行内存的移动
发表于 2018-11-03 15:36:44 回复(0)
python用户看到list就选上了。。
发表于 2018-09-27 14:42:38 回复(0)

扫一扫,把题目装进口袋

牛客网,程序员必备求职神器

扫描二维码,进入QQ群

扫描二维码,关注牛客网公众号

  • 公司地址:北京市朝阳区大屯路东金泉时代3-808北京牛客科技有限公司
  • 联系方式:010-60728802(电话) admin@nowcoder.com
  • 牛客科技©2018 All rights reserved
  • 京ICP备14055008号-4
  • 京公网安备 11010502036488号