algorithm库
1.void reverse( BidirectionalIterator First, BidirectionalIterator Last)
将迭代器所指范围的内容逆置。
2. void sort(RandomAccessIterator first, RandomAccessIterator last, Predicate comp);
/*降序排列*/
bool comp(int a, int b){
if(a < b)
return false;
else
return true;
}
/*升序排列*/
bool comp(int a, int b){
if(a < b)
return true;
else
return false;
}
first
处理第一元素位置的随机访问迭代器。范围进行排序。
last
寻址最终元素的随机访问迭代器位置将一个排序的范围。
comp
自定义比较函数。
string库
1.find函数
int pos;
string s = "ABC";
pos = s.find('A');
if(pos != string::npos)
cout << pos <<endl;
find/find_first_of/find_last_of 使用方法均相同。
2.getline
string s;
while(getline(cin,s)){
/*处理字符串*/
}
输入一行字符串,以换行符做结尾。
iomanip库
setw(n); //设置宽度n
setfill('0'); //设置填充字符'0'
setprecision(n); //设置有效数字位数n
setprecision(n)<<setiosflags(ios::fixed) //设置小数点右边数字个数,可进行四舍五入
四舍五入另一种方式:int c = (int)(a + 0.5);
vector库
1.构造二维数组
//构造m*n的二维矩阵
int m = 5, n = 4;
vector< vector<int> > Matrix(m, vector<int>(n));
注意使用vector构造二维矩阵可以动态生成,即m和n可以是变量。