算法导论——STL

Victory_Defeat

2018-08-30 14:27:13

Personal

STL(Standard Template Library),也称标准模板库,是由官方写的,方便代码使用 那么,STL包含哪些**头文件呢**?(万能头请自行跳过) 有这些:<algorithm>、<deque>、<functional>、<iterator>、<array>、<vector>、<list>、<forward_list>、<map>、<unordered_map>、<memory>、<numeric>、<queue>、<set>、<unordered_set>、<stack>、<utility>共13个头文件 其中大部分为**数据结构**,只有几个是**迭代器和算法** 数据结构是比较好用的,其中有: - queue:队列 - deque:双向队列 - priority_queue:优先队列 - stack:栈 - vector:向量(动态数组) - set:集合 - map:映射 为什么要使用这些呢?因为他们往往比**你手写的要好得多** 接下来,是algorithm,它的意思是“算法”,顾名思义,这个头文件**包含了各种算法**,例如:max、min、sort、swap、next_permutation(下一个排列)等等 **但是**,不懒的人请看过来:除了sort、next_permutation以外,手写的都比STL中的要快!所以,**请多手写一些** 总结一下:数据结构使用**方便、效率高、不浪费**,算法除了**sort+next_permutation以外尽量手写**