本文主要内容如下:
1.矢量
1.1的定义
1.2矢量容器内元素的访问
1.3矢量常用函数
2.
2.1集合的定义
2.2容器内元素的访问
2.3常用函数
3.字符串
3.1字符串的定义
3.2字符串容器内元素的访问
3.3字符串常用函数
4.地图
4.1地图的定义
4.2地图容器内元素的访问
4.3地图常用函数
5。队列
5.1队列的定义
5.2队列容器内元素的访问
5.3队列常用函数
5.4队列常见用途
6. priority_queue
6.1 priority_queue的定义
6.2 priority_queue容器内元素的访问
6.3 priority_queue常用函数
6.4 priority_queue内元素优先级的设置
7。堆栈
7.1堆栈的定义
7.2堆栈容器内元素的访问
8。一对
8.1的定义
8.2条中元素的访问
8.3一对常用函数
8.4一对常见用途
9。算法头文件
,
1.向量向量,长度可变的数组
头文件
# include
1.1矢量的定义
vector
例如:
vector
如果typename是向量
vector
相当于二维数组
vector
例如:
vector
,
1.2矢量容器内元素的访问
(1)通过下标访问
vi(指数),
(2)通过迭代器访问
vector
例如:
vector
有上下文环境时,可以直接用,汽车它=vi.begin ();
例如:
(汽车它=vi.begin();它!=vi.end (); + +)
printf (" % d”, *);
注:vi.begin()和vi.end()左闭右开。
,
1.3矢量常用函数
(1) push_back方法()
在末尾添加一个元素。
vi.push_back (i);
(2) pop_back ()
删除一个尾元素。
,vi.pop_back ();
(3)大小()
返回矢量元素的个数,注意是无符号类型。
vi.size ();
(4)明确()
清空向量中所有的元素。
vi.clear ();
(5)插入()
插入(x)在迭代器它前插入一个元素x。
vi: 1 2 3 4 5
vi.insert (vi.begin () + 2, 1),
vi: 1 2 3 4 5
(6)擦除()
1。删除单个元素
vi: 5 6 7 8 9
vi.erase (vi.begin () + 3)
vi: 5 6 7 9
2。删除一个区间内的所有元素
删除(第一,去年);左闭右开
vi: 5 6 7 8 9
vi.erase (vi.begin () + 1, vi.begin + 4)
vi: 5 9
2.集合,一个内部自动有序且不含重复元素的容器
头文件
# include
2.1的定义
set
例如:
set
设置数组
set
例如:
set
2.2容器内元素的访问
设置只能用迭代器访问
set
例如:
set
set
(汽车它=st.begin();它!=st.end (); + +)
打印(“% d”, *);
,
圣:2 3 5
组元素自动递增排序,且自动去除重复元素。
,
注意:不能用it 除了向量和字符串容器外不能用* (+ i) , (1)插入() 插入(x)将x插入组容器中,并自动递增排序和去重。 st.insert (x) (2)找到() 找到(值)返回设置中对应值为价值的迭代器。 set (3)删除() 1。删除单个元素 st.erase(它);//为迭代器 st.erase(找到(100)); st.erase(价值),值为所要删除元素的值。 st.erase (100), 2。删除区间内所有元素 删除(第一,去年);左闭右开 st.erase(第一,最后); st.erase (, st.end ()); (4)大小() 返回组内元素的个数,无符号类型 (5)明确() 清空集内所有的元素 , 3.字符串字符串数组 字符串str=癮bcd”; (1)通过下标访问 str(指数), 输出str cout<& lt; str; printf (" % s ", str.c_str ()); (2)通过迭代器访问 字符串迭代器不需要参数 字符串::iterator, (它=str.begin();它!=str.end (); + +) printf (" % c”, *); , (1)操作符+= str1 +=str2; (2)比较操作符 可直接使用,==?=? lt;=& lt;祝辞,祝辞=比较大小,比较规则是字典序 2.3常用函数
3.1 string 的定义
3.2字符串容器内元素的访问
3.3 string 常用函数
c++ STL笔记