常用函数
sort
// 对数组排序
int a[] = {3, 1, 4, 5, 2};
sort(a, a + 5); // 升序排列
sort(a, a + 5, greater<int>()); // 降序排列
// 对 vector 进行排序
vector<int> t({3, 1, 4, 5, 2});
sort(t.begin(), t.end()); // 升序排列
sort(t.begin(), t.end(), greater<int>()); // 降序排列
// 对结构体进行排序--重载运算符
bool cmp(Rec a, Rec b) { // 返回值为:a是够应该排在b的前面
return a.x < b.x;
}
for (int i = 0; i < 5; i++) r[i] = {-i, i};
sort(r, r + 5, cmp);
//set定义时设置集合降序排序;
set<int,greater<int>> divisor;
String
size_t size() const:返回字符串有效字符长度
size_t length() const:返回字符串有效的长度
size_t capacity()
bool empty() const:判断字符串是否为空串,是返回true,不是返回false
void clear():清空有效的字符
void resize(int len,char c);
把字符串当前大小置为len,多去少补,多出的字符c填充不足的部分
string &insert(int p,const string &s); //在p位置插入字符串s
string &replace(int p, int n,const char *s); //删除从p开始的n个字符,然后在p处插入串s
string &erase(int p, int n); //删除p开始的n个字符,返回修改后的字符串
reverse
// 翻转 vector
vector<int> a({1, 2, 3, 4, 5});
reverse(a.begin(), a.end());
// 翻转 string
string s = "abcd";
reverse(s.begin(), s.end());
// 翻转数组
int b[] = {1, 2, 3, 4, 5};
reverse(b, b + 5);
unique
// 数组去重
int a[] = {1, 1, 2, 2, 3, 3, 4};
int m = unique(a, a + 7) - a; // 不同元素的个数
cout << m << endl; // 4
// vector去重
vector<int> b = {1, 1, 2, 2, 3, 3, 4};
b.erase(unique(b.begin(), b.end()), b.end());