C++刷题记录总结--常用知识点
【摘要】
刷题随笔记录~
transform转换容器的元素
string s="2019-07-25 14:45:23";
transform(s.begin(),s.end(),s.begin(),...
刷题随笔记录~
- transform转换容器的元素
string s="2019-07-25 14:45:23";
transform(s.begin(),s.end(),s.begin(),[](char c)->char{
if(string("0123456789").find(c)==string::npos)
return ' ';
return c;
});
cout<<s<<endl;// 2019 07 25 14 45 23
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- istringstream/ostringstream使用(字符串转数字、数字转字符串)
int x = 123, y = 45;
ostringstream oss;
cout << x << y << " " << y << x << endl; // 12345 45123
oss << x << y << " " << y << x;
int a, b;
istringstream iss(oss.str());
iss >> a >> b;
cout << "a=" << a << endl;
cout << "b=" << b << endl;
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- C++格式控制输出(保留指定小数、整数指定宽度、不够长就用setfill(‘0’)占位)
double pi = 3.14159;
cout << fixed << setprecision(2) << pi << endl;// 3.14
int x = 2;
cout << setw(2) << setfill('0') << x << endl;// 02
- 1
- 2
- 3
- 4
-
差分:
adjacent_difference(v.begin(), v.end(), v2.begin())
-
前缀和:
partial_sum(v.begin(), v.end(), v2.begin())
-
优先级队列,小顶堆 :
priority_queue<Node, vector<Node>, greater<Node>> minheap;
-
加速
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
- 1
- 2
- 3
- C++函数指针:将函数作为实参传给另一个函数的形参调用
bool cmp1(int a, int b){
return a < b;
}
bool cmp2(int a, int b){
return a > b;
}
bool isBST(int root, int left, int right, bool (*cmp)(int, int)){
// TODO
// 这里面的函数名就用cmp
}
// 在主函数中调用isBST函数
int main(){
bool f = isBST(1, 0, n-1, cmp1); // 按照cmp1的排序规则
bool f2 = isBST(1, 0, n-1, cmp2); // 按照cmp2的排序规则
return 0;
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
-
vector排序比set快,printf比ios::sync_with_stdio(false)快
-
快速将代码中的int全部替换成long long。 使用宏替换int为long long
#define int long long
- 1
注意,此时main的返回值int也会被替换成long long,那编译器可就要报错了
那咋办呢,就是将main前面的int换成同int相同含义的signed
就可以啦,哈哈我是不是好机智??
signed main(){
}
- 1
- 2
- 3
文章来源: blog.csdn.net,作者:爱玲姐姐,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/jal517486222/article/details/97760801
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)