C++之STL(一)

1、泛型程序设计

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

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

2、什么是STL

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

3、STL组件

4、容器算法迭代器关系

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

5、容器

向量vector:动态数组

deque:每一片内存是连续的

6、如何选择序列式容器

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

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

deque数据结构示意图

7、迭代器

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

8、算法

9、适配器

相关推荐
王老师青少年编程24 分钟前
2026年全国青少年信息素养大赛初赛真题(算法应用主题赛C++初中组初赛真题3:文末附答案和解析)
c++·真题·答案·初赛·2026年·青少年信息素养大赛·初中组
轻颂呀1 小时前
C++11——并发库介绍
开发语言·c++
梓䈑2 小时前
【算法题攻略】快速排序 和 归并排序
数据结构·c++·排序算法
fan_music3 小时前
设计模式学习
c++·设计模式
小小编程路3 小时前
C++ 常用逻辑运算符
开发语言·c++·算法
‎ദ്ദിᵔ.˛.ᵔ₎5 小时前
C++ 智能指针
开发语言·c++
Lumbrologist5 小时前
【C++】零基础入门 · 第 4 节:循环结构(while、for、do-while)
开发语言·c++
我命由我123456 小时前
Android Framework P4 - ServiceManager 进程
android·c语言·c++·visualstudio·android studio·android-studio·android runtime
叶子野格6 小时前
《C语言学习:编程例题》B
c语言·开发语言·c++·学习
郝学胜-神的一滴6 小时前
Qt 高级开发014 :信号槽connect函数精讲
开发语言·c++·qt·开源软件·用户界面