1、ctype.h
isalnum:判断一个字符是不是字母或数字
isdigit:判断一个字符是不是数字
isalpha:判断一个字符是不是字母
islower:判断一个字符是不是小写字母
isupper:判断一个字符是不是大写字母
tolower:将一个字母字符转成小写字母
toupper:将一个字母字符转成大写字母
2、stdlib.h
atoi:将string转为int
rand:产生随机数
3、string.h
memcpy:memcpy(b,a,sizeof(a)) 把a数组复制到b数组
memset:memset(a,0,sizeof(a)) 把a数组置0
4、string
stoi:将string转为int
to_string:将数字转换成字符串
5、algorithm
sort:排序,默认为升序
lower_bound:第一个不小于value的值的位置
upper_bound:第一个大于value的值的位置
min:求最小值
max:求最大值
next_permutation:全排列
6、map
map可以建立从key到value的映射
first为key,second为value,以下为map遍历的一种方法:
map<string, int> ans;
for (map<string, int>::iterator iter = ans.begin(); iter != ans.end(); iter++)
cout << iter->first << " " << iter->second << endl
7、queue
empty:队列是否为空
size:队列长度
front:取队头元素
push:元素进队尾
pop:队头元素出队
8、priority_queue
empty:队列是否为空
size:队列长度
top: 取队头元素
push:元素进队尾
pop:队头元素出队
升序优先队列定义方式如下:
#include<queue>
using namespace std;
priority_queue<long long,vector<long long>,greater<long long> > q;
9、set
set的一个特点是元素不重复
count:count为0时,该元素不存在;count为1时,该元素已存在
insert:插入元素
size:集合长度
10、stack
empty:栈是否为空
size:栈长度
top: 取栈顶元素
push:元素进栈顶
pop:栈顶元素出栈
11、vector
assign:v2.assign(v1.begin(), v1.end()) 将v1的内容复制给v2
size:容器长度
push_back:元素入容器尾
容器遍历的一种方法如下:
vector<int> v1;
for (vector<int>::iterator iter = v1.begin(); iter != v1.end(); iter++)
cout << *iter << " ";