c++ STL笔记

本文主要内容如下:

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在名称;

相当于二维数组

vectorArrayName [arraySize];

例如:

vector六世[100],

,

1.2矢量容器内元素的访问

(1)通过下标访问

vi(指数),

(2)通过迭代器访问

vector:: iterator,它;

例如:

vector:: iterator,它;

有上下文环境时,可以直接用,汽车它=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 ArrayName [arraySize];

例如:

set[100],

2.2容器内元素的访问

设置只能用迭代器访问

set:: iterator,

例如:

set:: iterator,

set圣;

(汽车它=st.begin();它!=st.end (); + +)

打印(“% d”, *);

,

圣:2 3 5

组元素自动递增排序,且自动去除重复元素。

,

注意:不能用it

除了向量和字符串容器外不能用* (+ i)

,

2.3常用函数

(1)插入()

插入(x)将x插入组容器中,并自动递增排序和去重。

st.insert (x)

(2)找到()

找到(值)返回设置中对应值为价值的迭代器。

set:: iterator,它=st.find (2);

(3)删除()

1。删除单个元素

st.erase(它);//为迭代器

st.erase(找到(100));

st.erase(价值),值为所要删除元素的值。

st.erase (100),

2。删除区间内所有元素

删除(第一,去年);左闭右开

st.erase(第一,最后);

st.erase (, st.end ());

(4)大小()

返回组内元素的个数,无符号类型

(5)明确()

清空集内所有的元素

,

3.字符串字符串数组

3.1 string 的定义

字符串str=癮bcd”;

3.2字符串容器内元素的访问

(1)通过下标访问

str(指数),

输出str

cout<& lt; str;

printf (" % s ", str.c_str ());

(2)通过迭代器访问

字符串迭代器不需要参数

字符串::iterator,

(它=str.begin();它!=str.end (); + +)

printf (" % c”, *);

,

3.3 string 常用函数

(1)操作符+=

str1 +=str2;

(2)比较操作符

可直接使用,==?=? lt;=& lt;祝辞,祝辞=比较大小,比较规则是字典序

c++ STL笔记