【学习笔记】顺序容器的表格方式总结 C++

news2025/1/11 17:10:44

目录

  • 顺序容器及其特点
  • 顺序容器操作
    • 向顺序容器添加元素
      • insert
      • emplace
  • 参考

更新中…

顺序容器及其特点

名字访问元素插入,删除元素
vector(可变大小数组)支持快速随机访问尾部之外的位置插入或删除元素可能很
deque(双端队列)支持快速随机访问头尾位置插入,删除速度很
list(双向链表)支持双向顺序访问任意位置插入,删除速度很
forward_list(单向链表)支持单向顺序访问任意位置插入,删除速度很
array(固定大小数组)支持快速随机访问不能添加,删除元素
string(保存字符)支持快速随机访问尾部位置插入,删除速度
  1. 除 array 外,其余容器可以自动扩张和收缩容器大小
  2. string 和 vector 将元素保存在连续的内存空间,按下标寻址快,但在中间添加或删除元素慢
  3. list 和 forward_list 只能通过遍历方式访问元素

顺序容器操作

  1. 顺序容器操作涉及 4 种动作:存储访问添加删除

向顺序容器添加元素

操作名操作含义vectordequelistforward_listarraystring备注
push_back追加元素到容器尾部-
push_front前插元素到容器头部在这里插入图片描述
insert任意位置前插 0 个或多个元素forwar_list 提供特殊版本的 insert
emplace等效于前三个操作,但是它是构造元素,前三个是拷贝元素-

insert

  1. 参数:insert 接受迭代器作为第一个参数
  2. insert 重载之一,在特定位置添加,可以用来替代 push_front 操作:iterator insert (const_iterator position, const value_type& val);
    在这里插入图片描述
  3. insert 重载之二,前插范围内元素:template <class InputIterator>iterator insert (const_iterator position, InputIterator first, InputIterator last);
    在这里插入图片描述

emplace

  1. emplace 有三个具体的函数用于等效替代 push_frontinsertpush_back,它们分别是 emplace_frontemplaceemplace_back
    在这里插入图片描述

参考

  1. 《Primer C++》
  2. cplusplus

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/75183.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot实战:整合MapStruct实现数据类型转化

MapStruct 是一个代码生成器&#xff0c;它基于约定优于配置方法极大地简化了 Java bean 类型之间映射的实现。自动生成的映射转换代码只使用简单的方法调用&#xff0c;因此速度快、类型安全而且易于理解阅读&#xff1b;本篇就是实现 SpringBoot 整合 MapStruct 实现数据类型…

[附源码]JAVA毕业设计小区物业管理系统演示录像2020(系统+LW)

[附源码]JAVA毕业设计小区物业管理系统演示录像2020&#xff08;系统LW&#xff09; 项目运行 环境项配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09…

ffmpeg库安装及入门指南(Windows篇)- 2022年底钜献

最近项目需要&#xff0c;使用了 ffmpeg 做摄像头视频采集和串流。这几天有点时间&#xff0c;打算把相关的一些知识记录分享一下。 在撰写本文时&#xff0c;我又在另外一台电脑上把 ffmpeg 重新安装了一遍&#xff0c;所以绝对真实靠谱&#xff01;如果你觉得文章写得还不错…

代码效果测试

ROBUST TEXT DETECTION IN NATURAL IMAGES WITH EDGE ENHANCED MAXIMALLY STABLE EXTREMAL REGIONS 代码地址&#xff1a;https://github.com/akab/TextDetection 基本步骤&#xff1a; 1&#xff09;将原图转为灰度图&#xff1b; 2&#xff09;使用OpenCV的canny函数进行边…

HTML -- 常用标签及示例总结

文章目录HTML常用标签1 标签语义1.1 标签属性2 标题标签 h1 - h63 段落和换行标签3.1 段落标签3.2 换行标签4 文本格式化标签5 div和span6 图像标签7 超链接标签7.1 链接的语法格式7.2 链接分类8 表格标签8.1 表格的主要作用8.2 表格的基本语法8.3 表头单元格标签8.4 表格属性8…

C语言随机数的产生(rand、srand、time函数细节讲解)

✨C语言随机数的产生随机数生成代码&#xff1a;rand函数&#xff1a;srand函数&#xff1a;time函数&#xff1a;time函数补充:time_t类型讨论time_t指针传入的讨论&#xff1a;随机数生成代码&#xff1a; 先上代码&#xff0c;再详细解释&#xff1a; #include<stdio.h…

Python数组数据处理办法清单

import numpy as np import pandas as pd import matplotlib.pyplot as plt#matplotlib 的字体&#xff08;font&#xff09;为黑体&#xff08;SimHei&#xff09; plt.rcParams[font.sans-serif] [SimHei, ] # matplotlib正确显示正负号 plt.rcParams[axes.unicode_minus] …

dfs序(树形结构线性化)

dfs序是将树形结构转换为线性结构的一种方式。 dfs序 dfs序&#xff1a; 指每个节点在dfs深度优先遍历中的进出栈的时间序列。 定义三个数组&#xff1a; in[x]&#xff1a;表示结点x 入栈的时间戳。 out[x]&#xff1a;表示结点x出栈的时间戳&#xff0c;特殊的&#xff0c;出…

Linux网络原理及编程(5)——第十五节 TCP的连接(三次握手、四次挥手)

目录 三次握手 四次挥手 我们来重点说说两个状态&#xff1a;CLOSE_WAIT和TIME_WAIT 【CLOSE_WAIT】 【TIME_WAIT】 各位好&#xff0c;博主新建了个公众号《自学编程村》&#xff0c;拉到底部即可看到&#xff0c;有情趣可以关注看看哈哈&#xff0c;关注后还可以加博主w…

Linux CENTOS安装mysql8 64位

1. 查看系统中是否已经安装了mariadb 执行&#xff1a;yum list installed | grep mariadb 若已经存在&#xff0c;则删除 执行&#xff1a; yum remove mariadb 2.下载需要安装的压缩文件&#xff0c;从官网下载&#xff0c;文件为名字为 mysql-8.0.31-linux-glibc2.12-x86_6…

S7-1200和1500PLC与条码枪建立TCP_IP通信的具体方法示例

S7-1200和1500PLC与条码枪建立TCP_IP通信的具体方法示例 今天和大家分享西门子S7-1200和1500PLC如何获取条码枪的扫描数据,这种案例中一般PLC作为TCP/IP的客户端(只接收数据,不发送数据),条码枪作为TCP/IP的服务器。 如下图所示,在指令—通信—开放式用户通信中可以找到相关…

洞察 | 软件定义汽车时代下,汽车制造产业的应对策略

汽车产业作为先进制造行业&#xff0c;伴随着数字化技术&#xff0c;电气化技术的迭代正快速的成长&#xff0c;而随着智能汽车、自动驾驶概念的提出&#xff0c;整车制造的软硬件复杂度也在持续提升&#xff0c;软件定义汽车转型已成整体汽车制造产业的共识。 据中国软件行业…

成长任务| 挑战代码画颗圣诞树

&#x1f384;立即投稿&#x1f384; &#x1f4cc;活动规则 圣诞将至&#xff0c;这次来试试用代码过圣诞吧~挑战圣诞树的一万种画法! √ 使用代码画一颗#圣诞树#&#xff0c;将你的代码文件通过本页面投稿&#xff0c;审核通过即可参与活动 √ 可使用任意编程语言&#xff…

【解纠缠表示:图像增强】

DRLIE: Flexible Low-Light Image Enhancement via Disentangled Representations &#xff08;DRLIE&#xff1a;基于解纠缠表示的柔性弱光图像增强&#xff09; 解纠缠表示 弱光图像增强&#xff08;Low-light image enhancement (LIME)&#xff09;是将亮度不理想的图像转化…

为了彻底弄懂CSS中的1px究竟有多长,我翻出了家里的卷尺

CSS是描述HTML文档如何显示的&#xff0c;在显示的过程中&#xff0c;HTML元素的长宽、间距、字体大小等等&#xff0c;都需要通过长度尺寸单位来表示。我们常常会说&#xff1a;字体大小16像素&#xff0c; 间距10个像素。这里的像素&#xff0c;就是CSS中的长度尺寸单位。一个…

软件测试行业真的不行了吗?那出路到底在哪?

下面这张图片&#xff0c;想必大家应该都知道~~~ 其实每个人都在金字塔里面&#xff0c;只不过大家的高低位置不同&#xff0c;当然&#xff0c;越在底层的人越多&#xff0c;越在高层的人越少~ 这也符合“二八定律”&#xff0c;“优胜劣汰”&#xff0c;“适者生存”~ 当你的…

c++中的this指针

1.this指针的引入 首先我们看下面这一段代码 class Date { public:void DateSet(int year, int month, int day){_year year;_month month;_day day;}void print(){cout << _year << "-" << _month << "-" << _day <…

论文速递:一种用于视觉定位的基于NLP思路的直线特征匹配算法

标题&#xff1a;Line as a Visual Sentence:Context-aware Line Descriptor for Visual Localization 作者&#xff1a;Sungho Yoon1 and Ayoung Kim2∗ 摘要 在机器人以及计算机视觉领域&#xff0c;除了通过使用图像匹配的特征点计算多视图几何来求解问题&#xff0c;还可…

12月的第一波驱动,来看看支持哪款游戏吧!

真的停不下来&#xff01;2022年的最后一个月&#xff0c;新游戏仍然在发力&#xff0c;《极品飞车&#xff1a;不羁》、《巫师 3&#xff1a;狂猎》、《传送门RTX版》都在12月正式上线&#xff01; 为了提供更好的游戏体验&#xff0c;英伟达、AMD、英特尔三巨头更是马不停蹄…

时间轮算法HashedWheelTimer

文章目录一.HashedWheelTimer是什么?二.能干什么?为什么需要这个东西?优点适用场景三.怎么用?使用步骤1.引入pom2.使用举例四.时间轮原理五.使用注意点1.一个HashedWheelTimer对象只有一个worker线程2.每次添加的任务只会执行一次3.时间轮的参数非常重要4.所有的任务都是顺…