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

list使用及模拟

01. list介绍

  1. list是支持常数时间内任意位置插入删除的序列容器,具备双向迭代能力。
  2. 其底层为双向链表结构,各元素存于独立节点,通过指针指向前后元素。
  3. 与forward_list的主要区别:后者是单链表,仅支持单向迭代,结构更简单高效。
  4. 相比array、vector、deque等序列容器,list在任意位置插入/删除元素的效率更优。
  5. 缺陷:不支持随机访问(如访问第6个元素需线性迭代),且因节点存储额外信息,对存储小元素的大列表可能更占空间。

在这里插入图片描述


02. list使用

2.1 list构造器

在这里插入图片描述

void printlist(const list<int>&li,const string&name){cout << name << " ";list<int> tmp = li;if(tmp.empty()){//不空往下走cout << "empty" << endl;return ;}while (!tmp.empty()){cout << tmp.front() << " ";tmp.pop_front();}cout << endl;
}
int main()
{list<int> l1(2, 5);list<int> l2;list<int> l3(l1);list<int> l4(l1.begin(), l1.end());printlist(l1, "l1:");printlist(l2, "l2:");printlist(l3, "l3:");printlist(l4, "l4:");system("pause");return 0;
}

2.2 list迭代器

int main()
{list<int> l1;l1.push_back(1);l1.push_back(2);l1.push_back(3);l1.push_back(4);list<int>::iterator it = l1.begin();while (it!=l1.end()){cout << *it << "  ";it++;}cout << endl;list<int>::reverse_iterator rit = l1.rbegin();while (rit!=l1.rend()){cout << *rit << "  ";rit++;}

2.3 元素访问接口
函数声明接口说明
front()返回链表首元素的引用
back()返回链表尾元素的引用
http://www.xdnf.cn/news/1018567.html

相关文章:

  • HarmonyOS 应用模块化设计 - 面试核心知识点
  • WPF--Application.Current.Dispatcher.BeginInvoke
  • 在Jupyter Notebook中使用Conda虚拟环境
  • 使用 PyMuPDF 和 PySide6/PyQt6 编写的 PDF 查看器 (显示树状书签和缩略图列表,没有文字选择功能)
  • Monte Carlo衍生品定价(金融工程)
  • Spring Boot3流式访问Dify聊天助手接口
  • PHP语法基础篇(二):输出函数与字符串操作
  • 《第五章-心法进阶》 C++修炼生涯笔记(基础篇)指针与结构体⭐⭐⭐⭐⭐
  • 6月计算机新书:深度学习、大模型、DeepSeek
  • Blender 3D建模工具的快捷键总结--选择、视图、对象、编辑、UV贴图、模型材质、动画与渲染、工具
  • 238. 除自身以外数组的乘积
  • Linux运维-ansible-python开发-获取inventroy信息
  • 第二十五章 25.Network Architecture(CCNA)
  • 简析MDM在餐饮设备中的部署与应用
  • 快速掌握Django框架设计思想(图解版)
  • java_oss_微信小程序_通过临时签名url访问oss中存储的图像
  • 微信小程序中跨页面调用函数来刷新页面
  • 深入理解JavaScript设计模式之策略模式
  • @Profile, @Conditional, @ConditionalOnMissingBean, @ConditionalOnClass
  • nodejs 语言特性(面试系列2)
  • 【Pandas】pandas DataFrame droplevel
  • java中跨域问题及解决方案
  • Spring XML 常用命名空间配置
  • React Native 项目实战 —— 记账本应用开发指南
  • 【React Native 性能优化:虚拟列表嵌套 ScrollView 问题全解析】
  • Java-数组-异常(基础)
  • 包含40个购物网站UI界面的psd适用于电商项目
  • 在 Linux 系统中通过 yum 安装 Sublime Text
  • 平压印刷机设计原理与关键技术研究
  • 网络安全防护:点击劫持