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

编程日志5.19

STL(Standard Template Library)

优点:

1.提高编程效率

2.增强代码的可维护性和可读性

3.促进代码的复用

六大组件:

容器:存放数据结构,顺序表(vector)、串(string)、双端队列(deque)、链表(list)、集合(set)、哈希表(unordered_map)

算法:常用算法的封装,排序(sort)、查找(find)、遍历(traversal)

迭代器:遍历和访问容器中的元素,容器和算法的桥梁

仿函数:算法策略

适配器:用于修改或适配现有的容器或迭代器的行为,如stack和queue就是通过适配器基于底层的容器实现的

分配器:用于管理内存分配

STL容器分类

1、序列容器:按特定顺序存储

vector 顺序表:支持动态扩容也叫柔性数组,内部数据结构是连续存储的,可以随机访问,在尾部插入和删除效率高,中间插入删除效率低。

lis 双向循环列表:元素通过指针链接,在任何位置插入和删除元素,效率都较高,但随机访问效率。

deque 指针数组:数组的每个元素是一个指向一块连续内存的指针,结合了vector和list的特点,支持在两端高效的插入和删除元素,也可以随机访问。

2、关联容器:按照键的特定顺序存储和访问 set map 红黑树(本质上是平衡二叉树),增删改查时间复杂度O(log(n)),效率高。

3、容器适配器:对基本容器进行封装和适配

stack:后进先出线性表(queue、vector)

queue:先进先出线性表(queue、list)

STL常见算法:

遍历算法、最值算法、排序算法、查找算法、反转算法

冷门算法:稳定婚姻、树链剖分、后缀自动机、跳舞链、模拟退火、随机算法(不通用 无)

STL迭代器(->指针):

用于遍历容器中元素的工具

主要作用:

1、遍历容器元素  2、与算法结合使用

迭代器的类型:

输入迭代器:只能用于读取元素,只能向前移动一次。

输出迭代器:只能用于写入元素,只能向前移动一次。

前向迭代器:可以向前读取和写入元素。

双向迭代器:可以向前和向后移动,进行读取和写入操作。

随机访问迭代器:随机访问,像指针一样进行算术运算。

算法:

          vector<int> vec;

           vector<int>::iterator it;

            it++;

            int x=*it;

优点:

使得STL的容器和算法能够灵活地协同工作,提高了代码的通用性和可扩展性。

http://www.xdnf.cn/news/651223.html

相关文章:

  • 一根网线可以有两个ip地址吗?怎么实现
  • 洛谷-P1957 口算练习题
  • 基于大模型的胃肠道功能紊乱手术全程预测与干预方案研究
  • Elasticsearch 分片驱逐(Shard Exclusion)方式简析:`_name`、`_ip`、`_host`
  • 图论 判断是否有环
  • (自用)Java学习-5.13(Redis,OSS)
  • 第三十七天打卡
  • 【EdgeYOLO】《EdgeYOLO: An Edge-Real-Time Object Detector》
  • 分布式爬虫架构设计
  • Python 实现简单OCR文本识别
  • HTML应用指南:利用GET请求获取全国捞王锅物料理门店位置信息
  • cannot access ‘/etc/mysql/debian.cnf‘: No such file or directory
  • 解决 iTerm2 中 nvm 不生效的问题(Mac 环境)
  • “安康杯”安全生产知识竞赛活动流程方案
  • 课上实验111111
  • 4、docker compose
  • 汽配快车道:助力汽车零部件行业的产业重构与数字化出海
  • 关于OT IIOT系统远程访问的零信任安全
  • 从“黑箱”到透明化:MES如何重构生产执行全流程?
  • NV211NV212美光科技颗粒NV219NV220
  • Python——day37早停策略和模型权重的保存
  • 第九届水动力学与能源电力系统国际学术会议(HEEPS 2025)
  • Linux笔记---分页存储管理
  • 从OTA双雄「共舞」,透视旅游持续繁荣背后的结构性跃迁
  • BERT分类器和朴素贝叶斯分类器比较
  • 大语言模型 提示词的少样本案例的 演示选择与排序新突破
  • Baklib内容中台效能跃升实践
  • 什么是3D全景视角?3D全景有什么魅力?
  • 大语言模型(LLM)入门项目推荐
  • Java设计模式之模板方法模式:从基础到高级的全面解析(最详解)