zoukankan      html  css  js  c++  java
  • ​ 标准模板库STL(Standard Template Library)

    ​ 标准模板库STL(Standard Template Library)

    STL可分为

    容器(containers) 

    迭代器(iterators)

    算法(algorithms)

    空间配置器(allocator)

    配接器(adapters)

    仿函数(functors)

    六个部分

    STL被组织为下面的13个头文件:<algorithm>、<deque>、<functional>、<iterator>、<vector>、<list>、<map>、<memory.h>、<numeric>、<queue>、<set>、<stack>和<utility>

    序列式容器

    向量(vector)  :  连续存储的元素 

    列表(list)  :由节点组成的双向链表,每个结点包含着一个元素

    双端队列(deque) :连续存储的指向不同元素的指针所组成的数组

    适配器容器

    栈(stack) :后进先出(LIFO)的值的排列

    队列(queue):先进先出(FIFO)的值的排列 

    优先队列(priority_queue):元素的次序是由作用于所存储的值对上的某种谓词决定的的一种队列 

    关联式容器

    集合(set) :由节点组成的红黑树,每个节点都包含着一个元素,节点之间以某种作用于元素队的谓词排列,没有两个不同的元素能够拥有相同的次序 

    多重集合(multiset) :允许存在两个次序相等的元素的集合 

    映射(map): 由{键,值}对组成的集合,以某种作用于键对上的谓词排列 

    多重映射(multimap) :允许键对有相等的次序的映射 

    对(pair) :和map类似,但只有一对键值 <utility>

    智能指针(auto_ptr) :将一个用new开辟内存的指针赋给auto_ptr,会自动回收空间 <memory>

    注:

    vector 的底层为顺序表(数组)

    list 的底层为双向链表

    deque 的底层为循环队列

    set 的底层为红黑树

    hash_set 的底层为哈希表

    可使用#inlcude<bits/stdc++.h>包括所有头文件

  • 相关阅读:
    maven 父子模块保持相同
    Maven deploy时排除指定的某个module
    源码,反码,补码
    Java日志之Slf4j,Log4J,logback原理总结
    Git Bash设置代理
    分享2个分布式锁
    二叉树的遍历记忆方法
    MySQL百万级数据分页查询及优化
    eclipse无法访问sun.misc.Unsafe类的解决办法
    Spring学习日志之纯Java配置的MVC框架搭建
  • 原文地址:https://www.cnblogs.com/NirobertEinteson/p/11957064.html
Copyright © 2011-2022 走看看