zoukankan      html  css  js  c++  java
  • 11-28-----vertor和list使用场景

    1.vector拥有一段连续的内存空间,因此支持随机访问,如果需要高效的随机访问,而不子啊胡插入和删除的效率,使用vector,

    2.list拥有一段不连续的内存空间,如果需要高效的插入和删除,而不关心随机访问,则应使用list

    Vector:顺序表

    优点:和数组类似开辟一段连续的空间,并且支持随机访问,所以它的查找效率高其时间复杂度O(1)。
    缺点:由于开辟一段连续的空间,所以插入删除会需要对数据进行移动比较麻烦,时间复杂度O(n),另外当空间不足时还需要进行扩容。

    List:链表

    优点:底层实现是循环双链表,当对大量数据进行插入删除时,其时间复杂度O(1)
    缺点:底层没有连续的空间,只能通过指针来访问,所以查找数据需要遍历其时间复杂度O(n),没有提供[]操作符的重载。

    应用场景

    vector拥有一段连续的内存空间,因此支持随机访问,如果需要高效的随即访问,而不在乎插入和删除的效率,使用vector。

    list拥有一段不连续的内存空间,如果需要高效的插入和删除,而不关心随机访问,则应使用list。
    ————————————————
    版权声明:本文为CSDN博主「海马HiMark」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/yu876876/article/details/81698269

  • 相关阅读:
    asp.net 曲线图
    asp.net 图片下载
    使用a标签删除进行提示
    asp.net 后台获取input的值
    asp.net Excel数据导入到数据库中
    asp.net DataSet数据导出到Excel中
    select top 所有
    asp.net 上一条和下一条记录的显示
    日期相减函数
    mybatis mapper学习1(补充)-mapper.xml映射文件生成补充
  • 原文地址:https://www.cnblogs.com/wym591273/p/11949305.html
Copyright © 2011-2022 走看看