C/C++参考文档 概念 多元集合(MultiSets)和集合(Sets)相像,只不过支持重复对象。 头文件 #include <set> 名字空间 std 构造函数定义: multiset<Type> 常用函数begin语法: iterator be ...
STL常用模板:MultiMap多元字典
C/C++参考文档 概念 C++ Multimaps和map很相似,但是MultiMaps允许重复的元素。 Map:一对一;有序( 自动按 key 升序 );可用 [ ] 赋值和取值;采用 红黑树 结构;实现O(lgn)的查找,插入和删除。 Multimap:多对多;有序( ...
STL常用模板:Map字典
C/C++参考文档 概念 map是STL的一个关联容器,它提供一对一的hash。 第一个可以称为关键字(key),每个关键字只能在map中出现一次; 第二个可能称为该关键字的值(value); map以模板(泛型)方式实现,可以存储任意类型的数据,包 ...
STL常用模板:Bitset位集合
C/C++参考文档 概念 C++ Bitsets给程序员提供一种位集合的数据结构。Bitsets使用许多二元操作符,比如逻辑和,或等。 头文件 #include <bitset> 名字空间 std 构造函数语法: bitset();bitset( unsigned ...
STL常用模板:Double Ended Queue双向队列
C/C++参考文档 概念 双向队列和向量很相似,但是它允许在容器头部快速插入和删除(就像在尾部一样)。 头文件 #include <deque> 名字空间 std 构造函数语法: deque();deque( size_type size );deque( size ...
STL常用模板:List链表
C/C++参考文档 概念 List将元素按顺序储存在链表中。与向量(vector)相比, 它允许快速的插入和删除,但是随机访问却比较慢。 头文件 #include <list> 名字空间 std 构造函数定义: list<Type> 示例: list&l ...
STL常用模板:Set集合
C/C++参考文档 概念 set作为一个容器也是用来存储同一数据类型的数据类型,并且能从一个数据集合中取出数据,在set中每个元素的值都唯一,而且系统能根据元素的值自动进行排序。应该注意的是set中数元素的值不能直接被改变。C++ STL中标准关联容器set, multiset ...
STL常用模板:Iterator迭代器
C/C++参考文档 迭代器可被用来访问一个容器类的所包函的全部元素,其行为像一个指针。举一个例子,你可用一个迭代器来实现对vector容器中所含元素的遍历。有这么几种迭代器如下: 迭代器 描述 input_iterator 提供读功能的向前移动迭代器,它们可被 ...
STL常用模板:Vector向量
C/C++参考文档 概念 Vector包含着一系列连续存储的元素,其行为和数组类似。访问Vector中的任意元素或从末尾添加元素都可以在常量级时间复杂度内完成,而查找特定值的元素所处的位置或是在Vector中插入元素则是线性时间复杂度。 头文件 #include <vec ...
STL常用模板:Stack栈
C/C++参考文档 概念栈是一种后进先出的数据结构,也就是LIFO(last in first out) ,最后加入栈的元素将最先被取出来,在栈的同一端进行数据的插入与取出,这一段叫做“栈顶”。 头文件 #include <stack> 名字空间 std 构造函数定义: stack< ...