跳至主要內容

C++

LincZero大约 1 分钟

C++

目录

容器

STL中的容器大体分为

  • 序列容器(Sequence Containers)
    • 连续容器(数组实现)
      • Array,数组(定长,常用容器中唯一一个定长的)
      • Vector,计算机向量(不定长,每次扩充为原来的两倍)
      • Deque,双端队列(不定长,每次扩充一个buffer)
        • StackQueue(Deque实现)
    • 非连续容器(链表实现)
      • List,(双向)链表(环状链表实现)
      • Forward-List,单向链表
      • qlist,(旧版的 forward-list)
      • priority_queue,优先队列
  • 关联容器(Associative Containers)(树实现,且一般是红黑树,红黑树是高度平衡二叉树)
    • 有序关联容器
      • Set / Multiset,计算机集合,Multi指元素内容可以重复
      • Map / Multimap,计算机地图表,Multi指元素内容可以重复
    • 无序关联容器(Unordered Containers)(哈希表HashTable实现,且一般是拉链法。拉链法:元素重复时放同一链表,太长时再动态调整)
      • unordered_set / unordered_multiset
      • unordered_map / unordered_multimap
      • hash_set / hash_multiset,(旧版的)
      • hash_map / hash_multimap,(旧版的)

在这里插入图片描述

array(序列连续容器)

vector(序列连续容器)

list(序列非连续容器)

forward_list(序列非连续容器)

deque(序列连续容器)

stack 和 queue(deque适配器类容器)

multiset 和 multimap(有序关联容器)

unordered_multiset 和 unordered_multimap(无序关联容器)