c++模板库的一些基本使用
1 vector常见用法
1.1 vector定义
vector<typename>name(可以理解为一维的变长数组) vector<vector<int> >name(可以理解为二维数组)
1.2 vector访问
通过下标访问;通过迭代器访问
1.3 常用函数
(1)push_back(x)在vector后面加一个元素x
(2)pop_back()删除vector的尾元素
(3)size()获取vector中的元素个数
(4)insert(it,x)在it位置处插入x
(5)erase()删除元素,erase(it)删除it位置的元素erase(first,last)删除[first,last)内的所有元素
2 set常见用法
2.1 set定义
set<typename>name set<set<int> >name内部自动排序且不含重复元素。
2.2 set访问
通过迭代器访问
2.3 常用函数
(1)insert(x)
(2)find(value)
(3)size()获取vector中的元素个数
(4)erase()删除元素,erase(it)删除it位置的元素erase(first,last)删除[first,last)内的所有元素
3 string常见用法
3.1 string定义
string str
3.2 string访问
通过下标访问,通过迭代器访问
3.3 常用函数
(1)+=
(2)length() size()
(3)insert(pos,string) insert(it,it2,it3)把串插入[it2,it3)插入到it位置
(4)erase()删除元素,erase(it)删除it位置的元素erase(first,last)删除[first,last)内的所有元素
(5)sub(pos,len)返回从pos位置开始,长度为len的字串
(6)string::npos 值为-1
(7)str.find(str2)当str2是str的字串时,返回第一次出现的位置,否则返回string::npos;
(8)str.find(str2,pos)从pos位置开始
4 map常见用法
4.1 map定义
map<typename1,typename2>mp map会以键从小到大的顺序自动排序 unordered_map
4.2 map访问
通过迭代器访问;通过下标访问
4.3 常用函数
(1)insert(x)
(2)find(key)
(3)size()获取map中的对数
(4)erase()删除元素,erase(key)erase(it)it为需要删除的迭代器erase(first,last)删除[first,last)内的所有元素
5 queue常见用法
5.1 queue定义
queue<typename>name
5.2 map访问
只能通过front()访问队首元素,back()访问队尾元素
5.3 常用函数
(1)push(x)
(2)pop()
(3)size()获取queue中的对数
(4)empty()判读queue是否为空
6 stack常见用法
6.1 stack定义
stack<typename>name
6.2 stack访问
通过top()访问
6.3 常用函数
(1)push()入栈
(2)pop()出栈
(3)size()获取stack中元素个数
(4)empty()
7 algorthm常用函数
7.1 max(),min(),abs()
abs(x)x为整数,fabs(x)x为浮点数
7.2 swap(x,y)
交换x,y
7.3 reverse(it,it2)
将在[it,it2)之间的元素进行翻转
7.4sort(begin,end,cmp)