C++之STL(一)

1、泛型程序设计

目的:提供相同的算法,相同的逻辑,来对不同类型的数据结构进行操作。

所以需要将类型当作参数,也就是参数类型化。

2、什么是STL

STL是基于模板实现的。编译的时候进行实例化

3、STL组件

4、容器算法迭代器关系

迭代器提供了一致的接口,给算法使用,用于遍历容器。算法不关心每个容器的数据结构,这个由容器本身去处理。

5、容器

向量vector:动态数组

deque:每一片内存是连续的

6、如何选择序列式容器

list插入不需要移动数据,但是遍历比较慢。

vector和deque,在中间插入的时候需要移动数据。支持下标访问。访问速度的话,vector相对来说会更快一点。因为deque每片内存之间不一定连续。

deque数据结构示意图

7、迭代器

迭代器是容器与算法的桥梁。

8、算法

9、适配器

相关推荐
杜子不疼.18 小时前
【C++ AI 大模型接入 SDK】 - DeepSeek 模型接入(上)
开发语言·c++·chatgpt
石山代码19 小时前
C++ 内存分区 堆区
java·开发语言·c++
张小姐的猫21 小时前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
做人求其滴1 天前
面试经典 150 题 380 274
c++·算法·面试·职场和发展·力扣
见叶之秋1 天前
C++基础入门指南
开发语言·c++
计算机安禾1 天前
【c++面向对象编程】第42篇:模板特化与偏特化:为特定类型定制实现
开发语言·c++·算法
玖釉-1 天前
C++ 中的循环语句详解:while、do...while、for、嵌套循环与循环控制
开发语言·c++·算法
欧米欧1 天前
C++进阶数据结构之搜索二叉树
开发语言·数据结构·c++
青小莫1 天前
C++之vector讲解
c++·stl
计算机安禾1 天前
【c++面向对象编程】第41篇:函数模板与类模板:泛型编程的基石
开发语言·c++·算法