常用数据结构简讲

2023-11-13

在这里我会列举几个常用的STL数据结构与文档。

更舒服的查看体验

1. v e c t o r vector vector

官网文档

可变长数组(动态数组)
alt

STL- v e c t o r vector vector 常用函数:

* 代码 介绍
1 v.push_back(int num) 从队后插入一个元素
2 v.pop_back() 删除最后一个元素
5 v.begin() 返回数组第一个数的位置(指针)
6 v.end() 返回数组最后一个数的位置(指针)
5 v.empty() 返回数组是否为空
6 v.size() 返回数组元素的个数

2. q u e u e queue queue

官网文档

队列 - 先进先出
alt

STL- q u e u e queue queue 函数:

* 代码 介绍 时间复杂度
1 q.push(int num) 从队后插入一个元素 O ( 1 ) O(1) O(1)
2 q.pop() 从前面删除一个元素 O ( 1 ) O(1) O(1)
3 q.front() 返回队首元素 O ( 1 ) O(1) O(1)
4 q.back() 返回队尾元素 O ( 1 ) O(1) O(1)
5 q.empty() 返回队列是否为空 O ( 1 ) O(1) O(1)
6 q.size() 返回队列元素的个数 O ( 1 ) O(1) O(1)

3.priority_queue

官网文档

优先队列 - 返回最大的一个元素

alt

STL-priority_queue

* 代码 介绍 时间复杂度
1 pq.push(int num) 向队列插入一个元素 O ( L o g n ) O(Log_{n}) O(Logn)
2 pq.pop() 删除队列中最大的元素 O ( L o g n ) O(Log_{n}) O(Logn)
3 pq.top() 返回队列中最大的元素 O ( 1 ) O(1) O(1)
4 pq.empty() 返回队列是否为空 O ( 1 ) O(1) O(1)
5 pq.size() 返回队列元素的个数 O ( 1 ) O(1) O(1)

4.map

官网文档

字典 - 用来记录关键字

map包含一个键和值,一般使用键获取值,一般在一些要记录的字符串或者数组太长的时候使用,如果觉得时间复杂度不够可以改成unordered_map用法基本一样,但是实现方式不同。

alt

STL-map

* 代码 介绍
1 mp[x]=num 修改/添加一个键为x值为num的字典
2 mp[x] 获取键为x的值
3 mp.count(x) 获取键为x的字典是否存在
4 mp.empty() 返回队列是否为空
5 mp.size() 返回队列元素的个数
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

常用数据结构简讲 的相关文章

随机推荐

  • The “path“ argument must be of type string. Received undefined; at(Object.extname)

    validateString下一行是 Object extname path js 752 5 的报错 原因是在nuxt config js中 把plugins的参数写错了 此处省略大量代码 const baseConfig require
  • Activiti 流程启动及节点流转源码分析

    作者 jiankunking 出处 http blog csdn net jiankunking 本文主要是以activiti study中的xiaomage xml流程图为例进行跟踪分析 具体的流程图如下 流程图对应的XML文件如下
  • unity 绘制属性雷达图 - 绘制描边(更改uv)

    实现的效果 先绘制一个五边形的mesh 然后在给边缘绘制一圈mesh 对uv进行重新赋值 实现描边效果 第一步 绘制mesh 绘制多边形mesh 首先先绘制一个五边形 mesh绘制要素 顶点 三角形 uv信息 顶点信息 就是勾勒三角形用的几
  • nginx静态代理设置二:静态文件在别的服务器

    动静结合 把网络上的路径映射成自己的虚拟机 修改共享的文件夹 映射的虚拟机也会同步更新 映射别的电脑的文件夹的时候要关闭防火墙 否则会一直连不上 1 新建静态文件夹StaticProxy 然后共享 选择账户Everyone就可以 2 本机测
  • void指针(void *)是什么?

    void 指针的使用规则 1 void 指针可以指向任意类型的数据 就是说可以用任意类型的指针对 void 指针赋值 例如 int a void p p a 如果要将 void 指针 p 赋给其他类型的指针 则需要强制类型转换 就本例而言
  • yii2学习笔记 --- 基础版配置链接多个数据库

    打开 config db php return class gt yii db Connection dsn gt mysql host localhost dbname yii2basic username gt root passwor
  • Qt数据库总结

    include
  • GD32F103配置PA15 PB3 PB4为普通IO

    PB3 PB4 PA15 作为普通IO时候 需要disable JTAG 释放出来 gpio pin remap config GPIO SWJ SWDPENABLE REMAP ENABLE 这个语句很重要 Function Key Sc
  • vue使用dhtmlx-gantt

    根据需求制作甘特图 绘制两时间段 相交地方为深颜色 没找到可以直接用的插件 于是就靠自己手动计算时间差与时间比例 但所得结果有部分误差 有更好组件欢迎交流 安装 npm install dhtmlx gantt save index js
  • Mysql数据库,查询结果为空值,如何处理?

    当sql查出空值的时候 如果想要获取 其中的值可能会出错 a res getString 字段 如果该字段的值是null 就会报错 所以需要在取字段值的时候做try catch 处理 try a res getString 字段 catch
  • unityShader物体表面流光效果

    本文转载自http blog csdn net lyh916 article details 51831720 参考链接 http liweizhaolili blog 163 com blog static 162307442012726
  • C++的排序

    C 十大排序 1 快速排序 2 插入排序 3 选择排序 4 冒泡排序 5 归并排序 6 堆排序 7 计数排序 8 桶排序 9 基数排序 10 希尔排序 11 补充 稳定排序 排序前后两个相等的数的相对位置不变 归并排序 冒泡排序 插入排序
  • On java 8 笔记——第六章 初始化和清理

    有两个安全性问题 初始化和清理 利用构造器保证初始化 在 Java 中 类的设计者通过构造器保证每个对象的初始化 如果一个类有构造器 那么 Java 会在用户使用对象之前 即对象刚创建完成 自动调用对象的构造器方法 从而保证初始化 构造器名
  • 宽度优先搜索(BFS)总结

    基本思想 宽度优先搜索一般用队列 queue 实现 且总是按层次的顺序进行遍历 解这类题的一般套路 定义一个结构体作为节点来存储信息 如保存横纵坐标x y 后续队列以该结构体为单位来存储 定义bool型数组 标记每个位置是否入过队列 定义增
  • 从好玩到好用:程序员用AI提效的那些事儿

    本片内容是 AI思维空间 ChatGPT纵横编程世界 点亮智慧火花的续作 主要记录组内开发小伙伴儿们在开发过程中的实际应用案例 记录典型案例 尽量不要和其他人重复 以解决开发过程中的实际问题为主 设计 方案 编码 测试 集成 部署等等 目的
  • python读取各种文件

    1 yaml文件 yaml文件的特点 1 数据结构 可以用类似大纲的 缩排 方式呈现 2 连续的项目通过减号 来表示 也可以用逗号来分割 3 键值对用冒号 来分隔 4 数组用 括起来 hash用 来括起来 写法 1 house yaml h
  • Bing 高级检索

    我常用的就这么几个 文章目录 使用空格表示与 site 返回属于指定网站的网页 使用filetype 限定文件类型 使用空格表示与 举例 如果直接输入搜索词 天气 返回 我们希望再精确一点 可以搜索 天气 贵州 这样就会优先搜到既有天气又有
  • 时间序列处理与应用

    时间序列处理与应用 介绍 一般情况下 在进行数据分析时 几乎都会遇到与时间序列相关的任务 例如 某企业的某项指标在第二天或者每周 又或每月等会发生什么 某款应用每天的下载量是多少等等 在本节实验中 将使用不同的方法来处理这些与时间序列相关的
  • 新版发布

    距离 v3 10 大版本发布刚过去一个月 v3 10 2 也要正式 release 了 快来看看它新增了哪些新功能以及修复了哪些问题吧 新功能 认证 品高云 OAuth 认证源支持 主机 支持自定义 PCI 透传设备的透传 主机 OpenS
  • 常用数据结构简讲

    在这里我会列举几个常用的STL数据结构与文档 更舒服的查看体验 1 v e c t o r vector vector 官网文档 可变长数组 动态数组 ST