当前位置: 首页 > article >正文

序列式容器详细攻略(vector、list)C++

vector

std::vector 是 STL 提供的 内存连续的可变长度 的数组(亦称列表)数据结构。能够提供线性复杂度的插入和删除,以及常数复杂度的随机访问。

为什么要使用 vector

作为 OIer,对程序效率的追求远比对工程级别的稳定性要高得多,而 vector 由于其对内存的动态处理,时间效率在部分情况下低于静态数组,并且在 OJ 服务器不一定开全优化的情况下更加糟糕。所以在正常存储数据的时候,通常不选择 vector。下面给出几个 vector 优秀的特性,在需要用到这些特性的情况下,vector 能给我们带来很大的帮助。

vector 可以动态分配内存

很多时候我们不能提前开好那么大的空间(eg:预处理 1~n 中所有数的约数)。尽管我们能知道数据总量在空间允许的级别,但是单份数据还可能非常大,这种时候我们就需要 vector 来把内存占用量控制在合适的范围内。vector 还支持动态扩容࿰


http://www.kler.cn/a/418966.html

相关文章:

  • C++小问题
  • 【Python爬虫五十个小案例】爬取猫眼电影Top100
  • 关于ConstarintLayout有关的点
  • 云原生后端开发:构建现代化可扩展的服务
  • 图解RabbitMQ七种工作模式生产者消费者模型的补充
  • Mybatis:CRUD数据操作之多条件查询及动态SQL
  • Nginx 负载均衡和反向代理
  • 二:OpenStack环境准备-controller node
  • Qt 窗口操作函数(置顶、全屏,最大化最小化按钮设置等)
  • Ubuntu 服务器部署 Tomcat 并配置 SSL/TLS 证书
  • 斐波那契数
  • k8s 1.28 聚合层部署信息记录
  • 2024年华为OD机试真题-矩阵扩散-C++-OD统一考试(E卷)
  • win32com python 操作wps 解决修改 表格触发关闭 其他excel的功能
  • 如何高效地架构一个Java项目
  • 三:安装服务-controller node
  • Oracle 去除小数点后面的零
  • CMAKE常用命令详解
  • 《Vue 组件化开发:构建可复用的模块》
  • 【笔记】成为雍正
  • CPU性能优化--性能瓶颈
  • 如何在 Debian 8 上设置 Apache 虚拟主机
  • Flask项目入门—会话技术Cookie和Session
  • SpringBoot整合WebService
  • flink学习(9)——time+water mark
  • Linux服务器使用JupyterLab