c++刷算法时的一些技巧
输入输出
getline(cin,str,<separator>);
- 三个参数一次为输入流,存放位置,分割符,其中分隔符默认为\n,即默认读取一行
字符串操作
- 字符串转数字
- stoi(int)
- stol(long)
- stof(float)
- stod(double)
- 字符串可直接用+连接
- 数字转字符串to_string()
- 大小写转换
- transform(s.begin(), s.end(), s.begin(), ::toupper); //小写转大写
- transform(s.begin(), s.end(), s.begin(), ::tolower); //大写转小写
vector 操作
- max_element(v.begin(),v.end()) 可以返回最大元素的迭代器,用*获得最大值 如
*max_element(p.begin(), p.end())
,最小值即min_element(); - vector 赋值给另一个vector
- 直接用等号赋值
- v1.assign(v2.begin(), v2.end()); //将v2赋值给v1 会清除掉v1以前的内容
- v1.swap(v2); 交换vector