北京网站开发要多少钱,html个人网页设计代码,青岛网站建设哪家公司好,网上有兼职做数据网站空间上
list的底层是 一个个节点链接起来的#xff0c;自然是不连续的空间。 vector的底层是3个指针共同维护的一段连续的空间
vector#xff1a;连续空间#xff0c;不易造成内存碎片#xff0c;空间利用率高。
list#xff1a;结点不连续#xff0c;易造成内存碎片自然是不连续的空间。 vector的底层是3个指针共同维护的一段连续的空间
vector连续空间不易造成内存碎片空间利用率高。
list结点不连续易造成内存碎片小元素结点密度低空间利用度低。
迭代器 list的迭代器不是随机迭代器无法对迭代器进行 - - 等操作因此list要使用sort只能使用自己的sort 但是list进行sort排序的效率极低甚至不如将数据拷贝到vector并用vector排好后再重新存到list中的效率。
vector的迭代器是随机迭代器因此可以直接用sort排序且效率不错
list的迭代器是对节点的封装vector的迭代器 本质上是 一个指针
适用场景
list常常适用于 频繁进行头插头删且频繁对数据进行删除和插入的情形。
vector常常适用于 尾插 尾删 常常对数据进行访问的情形。