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

常州建网站公司黑马程序员视频库

常州建网站公司,黑马程序员视频库,wordpress分页代码,快速做网站的技术一:基本定义 vector: 基于连续内存的动态数组。 提供随机访问。 list: 基于双向链表 每个元素是一个节点,节点间通过指针连接,支持任意位置插入和删除 二:底层数据结构 vector: 元素存储在连续的…

一:基本定义

vector:

基于连续内存的动态数组。

提供随机访问。

list:

基于双向链表

每个元素是一个节点,节点间通过指针连接,支持任意位置插入和删除

二:底层数据结构

vector:

元素存储在连续的内存块中。

内部维护三个指针:begin,end,capacity

当容量不足时,重新分配更大内存并复制元素

list:

元素存储在非连续的节点中,每个节点包含数据、前指针和后指针。

节点间通过指针链接,形成双向链表

内存分配是分散的,按需分配。

三:内存布局

vector:

连续内存,元素紧凑排列。

优点:访问效率高

缺点:插入删除需移动元素

list:

非连续内存,节点分散。

优点:插入删除只需调整指针

缺点:访问效率低

四:访问方式

vector:

支持下标随机访问

时间复杂度:O(1)

list:

不支持随机访问,只能遍历。

访问第n个元素时间复杂度:O(n)

五:插入和删除

vector:

尾部:push_back和pop_back是O(1)(可能触发扩容)

中间/头部:insert和erase是O(n),需要移动元素。

扩容时可能重新分配内存并拷贝所有元素。

list:

任意位置:insert和erase是O(1),只需调整指针。

不涉及内存重新分配。

六:内存管理

vector:

预分配容量capacity,通过reserve可减少重新分配。

扩容时通常按倍增(如2倍)分配。

list:

按需分配,每个节点独立申请内存。

无需预分配。

七:迭代器失效

vector:

插入可能导致扩容,使所有迭代器失效。

删除或插入(非尾部)使后序迭代器失效。

list:

插入和删除只影响当前节点的迭代器。

八:元素存储开销

vector:

仅存储元素本身,无额外指针。

内存效率高。

list:

每个节点存储数据、前指针后指针

内存效率低。

http://www.dtcms.com/wzjs/584084.html

相关文章:

  • 建筑网站大图21dove谁做的的网站
  • 网络营销如何进行网站推广建设官网银行
  • 福州网站建设网络公司广告设计培训班有用吗
  • 做电影网站用什么格式好好看的页面布局
  • 自开发购物网站网站整站优化推广方案
  • 网站信息资源建设包括哪些wordpress xin主题
  • 做网站比较专业的公司展示网站模板下载
  • 片网站无法显示合肥网页设计培训哪家好
  • 西安网站制作公司哪虚拟主机网站301跳转
  • 南京做网站的公司有哪些网站建好了还需要什么维护
  • 自己做的网站如何让qq登录超溜网站建设
  • 添加网站到百度WordPress导航菜单不显示
  • godaddy主机到网站app网站开发案例
  • 怎么创建二级域名淄博网站的优化
  • 电商网站建设公司排名计算机专业是干什么的
  • 企业网站建设的方案书wordpress 用户注册
  • 芜湖 网站建设刷题网站开发
  • 企业网站建设合作协议范文十大互联网装修平台
  • 做网站必须知道的问题携程网站 建设平台分析
  • 栖霞建设网站建设网站域名是买吗
  • php 怎么做 网站 图片免费注册com的网站
  • 梧州推广网站服务商手机app软件开发定制
  • 北京专业网站制作服务丰泰建设集团有限公司网站
  • wordpress创建数据库东城区网站排名seo
  • 济南网站开发公司排名wordpress网站怎么进入后台
  • 三水建设局网站html访问人数统计代码
  • dede自适应网站注意事项个人网站域名名称大全
  • 做公众号和网站一样吗网易邮箱登录
  • 做网站接电话一般要会什么问题嵌入式培训什么意思
  • 威海外贸网站建设编辑模板wordpress