目录
一、按照特定字符分割String
一个例子
string s = "(plus,+)";
char buf[20];
strcpy(buf, s.c_str());
char delims[] = ",";//可以是数组
char *result = NULL;
result = strtok( buf, delims );
string res(result);
res = res.substr(1);//从下标为1开始到末端
调用strtok 需要先将string用strcpy 转换字符数组,调用函数后,再转换成string。
二、sort排序
2.1 对vector排序
sort(s.begin(), s.end(), greater<int>());//降序,记得有括号
sort(s.begin(), s.end());//升序(默认)
sort(s.begin()+l, s.begin()+r);//从下标为l开始,r-1结束,对该子区间排序
2.2 自定义结构体排序
主要表达式为:sort(vector.begin(),vector.end(),[](const auto &a,const auto &b)->bool{return ....});
typedef struct node{
int id;
int task;
}node;
//首先以task从小到大排序,当task相同,再以id从小到大排序
bool cmp(const node &</

本文探讨了C++中的算法应用,包括按特定字符分割String、使用sort进行vector、自定义结构体和正则表达式的排序,以及数组复制。此外,还介绍了STL的set、vector和map的使用技巧,如判断set元素、覆盖插入和删除操作,以及文件数据读取和memset初始化。
最低0.47元/天 解锁文章
288

被折叠的 条评论
为什么被折叠?



