page contents

标准库中有哪些容器?分别有什么特点?

轩辕小不懂 发布于 2022-01-08 10:46
阅读 725
收藏 0
分类:C/C++开发
  • c
  • c++
  • 2844
    Nen
    Nen
    - 程序员

    标准库中的容器主要分为三类:顺序容器、关联容器、容器适配器。

    顺序容器包括五种类型:

    array<T, N>数组:固定大小数组,支持快速随机访问,但不能插入或删除元素;

    vector<T>动态数组:支持快速随机访问,尾位插入和删除的速度很快;

    deque<T>双向队列:支持快速随机访问,首尾位置插入和删除的速度很快;(可以看作是vector的增强版,与vector相比,可以快速地在

    首位插入和删除元素)

    list<T>双向链表:只支持双向顺序访问,任何位置插入和删除的速度都很快;

    forward_list<T>单向链表:只支持单向顺序访问,任何位置插入和删除的速度都很快。

    关联容器包含两种类型:

    map容器:

    map<K, T>关联数组:用于保存关键字-值对;

    multimap<K, T>:关键字可重复出现的map;

    unordered_map<K, T>:用哈希函数组织的map;

    unordered_multimap<K, T>:关键词可重复出现的unordered_map;

    set容器:

    set<T>:只保存关键字;

    multiset<T>:关键字可重复出现的set;

    unordered_set<T>:用哈希函数组织的set;

    unordered_multiset<T>:关键词可重复出现的unordered_set;

    容器适配器包含三种类型: stack栈、queue队列、priority_queue优先队列。

    请先 登录 后评论