本文介绍常用STL知识,STL是C++提供的一个标准模板库,STL库就是把我们经常使用的数据结构和算法实现并封装了起来 当我们想调用时,直接调用即可使用,非常简单。
这一篇博客主要让我们懂得STL模板库中的组件是什么,应该什么时候用,应该怎么用。
想通过本博客了解底层原理实现的大佬 只怪作者太无能╥﹏╥
STL库中包含了6大组件:
容器:存放数据
算法:操作数据
迭代器:算法借助迭代器 操作容器
仿函数:为算法提供策略
适配器:为算法提供更多的参数接口
空间适配器:为容器和算法管理空间
不喜欢看概念的可以跳过 直接跳转到常用容器目录了解和实操
算法
我们所编写的每个程序都是一个算法,其中的每个函数也都是一个算法, 毕竟它们都是用来解决或大或小的逻辑问题或数学问题。STL 收录的算法经过了数学上的效能分析与证明,是极具复用价值的,包括常用的排序,查找等等。特定的算法往往搭配特定的数据结构,算法与数据结构相辅相成。
算法分类:
质变算法:是指运算过程中会更改区间内的元素的内容。例如拷贝,替换,删除等等
非质变算法:是指运算过程中不会更改区间内的元素内容,例如查找、计数、遍历、寻找极值等等
迭代器
每个容器都有自己的迭代器。
使用迭代器可以遍历STL容器中的全部元素或部分元素
迭代器有不同的迭代方式。如下图所示。
上面我们初略了解了一下算法和迭代器 下面让我们一步一步了解和使用它们吧
容器-跳转
String容器
Vector容器
deque容器
stack容器
queue容器
list容器
set容器
作者正在努力更新中...