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

C++list

list简介

list是我们的链表,而且是带头双向循环链表,如下图

 我们都知道,链表是由一个一个的节点组成的,它的成员由下面几个部分组成

通过对前面string,vector的学习,其实再来看我们的链表及其成员函数,是非常简单的,如果各位前面的没有学习,我觉得是与必要学习一下前面的,话不多少,直接来开始我们今天的正题

list的使用

 

针对上面的代码的说明:

list的成员函数中是没有[]的,因为链表的结构在物理上不是连续的,所以,我们的遍历只能能用

迭代器或者范围for

emplace函数

 这个函数的作用是把一个链表里面的数据剪切到另外一个链表里面去,记住,是剪切,不是复制,进行这个操作之后被剪切的那个链表里面的数据会没的

通过上面的代码,结果的确是这样

那这个函数是否可以将本对象里面的某一个元素移到本对象里的位置嘞?答案是可以的

对这个函数里面的一些参数进行说明

 swap函数

和别的容器不一样,list是有自己的交换函数的

他的作用是将两个链表的内容进行交换

 

排序函数 

list也有自己的排序函数,标准库里面的排序函数是不支持list的,因为标准库里面的排序函数里面参数的类型是随机迭代器,但是list的迭代器并不是随机迭代器

标准库里面的

 

如果我们想要进行降序排序,可以在里面添加一个greater<int>()

 

总结: 

其实,这部分好像并没有什么好讲的,通过前面的string,vector的学习,这些函数都差不多,名字,功能都是几乎一模一样的

http://www.lryc.cn/news/460822.html

相关文章:

  • 设计模式 - 结构型
  • STM32编码器接口
  • 2024客户世界年度大会开幕,码号卫士赋能数字运营服务新升级
  • AcWing 802. 区间和(离散化算法,python)
  • 【网页设计】CSS 盒子模型
  • 如何通过构建对应的api服务器使Vue连接到数据库
  • 新手给视频加字幕的方法有哪些?4种加字幕方法推荐!
  • Oracle实际需要用到但常常被忽略的函数
  • 代码随想录算法训练营Day23
  • vue使用table实现动态数据报表(行合并)
  • YARN调度原理详解
  • Go-知识泛型
  • Qt 如何 发送与解析不定长报文以及数组不定长报文
  • Rust默认使用UTF-8编码来解析源代码文件。如果在代码中包含无法用UTF-8编码表示的字符,编译器会报错!
  • 【jeston】torch相关环境安装
  • [CR]厚云填补_大型卫星影像去云数据集
  • Langchain CharacterTextSplitter无法分割文档问题
  • ros service不走是为什么
  • 量子计算机的原理与物理实现
  • SQL Server 常用关键词语法汇总
  • 软件测试工程师面试整理 —— 操作系统与网络基础!
  • 网络安全防御策略:通过限制IP访问提升服务器安全性
  • Multiprocessing出错没有提示was skipped without notice in python
  • 调整应用窗口透明度
  • 启智畅想集装箱号码智能识别原理,OCR识别应用
  • React基础知识
  • Java基础:面向对象编程3
  • 实验kubernetes的CPU绑定策略
  • Zsh 安装与配置
  • Redis可视化工具Redis Desktop Manager(附安装包)