c++刷算法时的一些技巧

输入输出

  1. getline(cin,str,<separator>);
    • 三个参数一次为输入流,存放位置,分割符,其中分隔符默认为\n,即默认读取一行

字符串操作

  1. 字符串转数字
    • stoi(int)
    • stol(long)
    • stof(float)
    • stod(double)
  2. 字符串可直接用+连接
  3. 数字转字符串to_string()
  4. 大小写转换
    • transform(s.begin(), s.end(), s.begin(), ::toupper); //小写转大写
    • transform(s.begin(), s.end(), s.begin(), ::tolower); //大写转小写

vector 操作

  1. max_element(v.begin(),v.end()) 可以返回最大元素的迭代器,用*获得最大值 如 *max_element(p.begin(), p.end()),最小值即min_element();
  2. vector 赋值给另一个vector
    • 直接用等号赋值
    • v1.assign(v2.begin(), v2.end()); //将v2赋值给v1 会清除掉v1以前的内容
  3. v1.swap(v2); 交换vector