蓝桥杯4天冲刺5

上一篇提到了vector,不由得联想到Java中学到的List

因此做一个对比——

 

#  vector底层实现是数组;list是双向 链表

#  vector支持随机访问,list不支持

#  vector是顺序内存,list不是

#  vector在中间节点进行插入删除会导致内存拷贝,list不会

#  vector一次性分配好内存,不够时才进行2倍扩容;list每次插入新节点都会进行内存申请

#  vector随机访问性能好,插入删除性能差;list随机访问性能差,插入删除性能好

 

原因——

vector拥有一段连续的内存空间,因此支持随机访问

list拥有一段不连续的内存空间

 

 

不过需要强调的一点是,C++中的list似乎和Java中的List有所不同

查了查攻略但目前还没有分辨太清

posted @ 2023-04-05 21:15  椰子灰  阅读(16)  评论(0)    收藏  举报