list和vector的区别

1>list可以按值删除

vector和deque没有给定的函数,需要find();和erase();一起使用才能做到

2>list删除元素会释放空间,vector不会

3>list是双向迭代器,vector是随机迭代器

4>list内部排序是指针指向的更改,vector涉及对象的创建和销毁

5>vector改变元素,导致迭代器失效

deque删除的时候不会导致迭代器失效(非迭代器位置),插入会导致迭代器失效

list删除元素导致当前迭代器失效,不影响其他迭代器

6>vector是连续存储容器,动态数组

list是动态双向链表

7>vector连续空间,不容易产生内部碎片

list节点不连续,容易造成内部碎片,空间利用率低

8>vector访问具有局部性,存放高速缓存

list存放内存

相关推荐
承渊政道32 分钟前
【优选算法】(实战突破字符串:经典题型与解题模板)
c语言·数据结构·c++·笔记·学习·算法·容器
代码小书生35 分钟前
Windows X-Lite Win11 26H1 v3 游戏优化系统!集Win11、Win10、Win7三代优点,兼顾游戏办公生产算力,系统精简纯净
windows·游戏·windows x-lite·windows 游戏版·windows优化版·老电脑系统
w61001046636 分钟前
图论总结-day66
数据结构·算法·深度优先·图论
被放养的研究生40 分钟前
算法比赛用到的函数或模块(Python)
windows·python·算法
故事和你911 小时前
洛谷-算法1-1-模拟与高精度4
开发语言·数据结构·c++·算法·蓝桥杯·动态规划
4ever.ov01 小时前
Any模拟实现
c语言·数据结构·c++
私人珍藏库1 小时前
[Windows] imFile下载器v1.2.0绿色版
windows·工具·软件·多功能
漫随流水1 小时前
c++编程:数组元素去重,逆序输出
数据结构·c++·算法
handsomestWei1 小时前
win环境OpenClaw配置和使用
windows·ai·安装部署·openclaw·龙虾
Hawk Yang1 小时前
从零开始:Windows 连接 Linux 服务器的 SSH 免密登录教程
linux·服务器·windows