
C++
scut_salmon
这个作者很懒,什么都没留下…
展开
-
分享一个二分查找算法的trick
这里分享一个二分查找算法的trick,我们知道二分查找是对一个已经排序对数组进行二分搜索,初始化一个left和right,left和right表示上界和下界。在每次循环中求mid,并不断更新left或right,直到找到最终的mid但是二分查找有很多写法和细节,例如,while(left<=right){ int mid = (left+right)/2; if()...原创 2020-03-15 23:59:24 · 247 阅读 · 0 评论 -
C++理解upper_bound 和lower_bound
C++中的upper_bound 和lower_bound比较容易弄混。记住的方法是根据名字记住其功能,如upper_bound表示以某个数为上限,这个数应该放在哪个位置;lower_bound表示以某个数为下限,这个数应该放在哪个位置。同时注意数组应该提前拍好序。举个例子:#include<bits/stdc++.h>using namespace std;int m...原创 2020-03-14 12:29:04 · 1408 阅读 · 0 评论 -
C++求组合数代码
long long C(int N, int M) { long long sum = 1; for(int i=1;i<=M; i++) { sum=sum*(N-M+i)/i; } return sum;}这段代码可以防止分子相乘之后越界的情况,有改进欢迎交流!...原创 2019-11-18 14:06:29 · 1229 阅读 · 0 评论 -
C++11多线程异步操作std::future
本博客参考自https://thispointer.com/c11-tutorial/C++多线程的在某些场景需要实现异步操作,由std::futer 和std::asych, std::packaged_task, std::promise搭配使用。目录1.std::future2.std::promise3.std::asych4.std::packaged_task...原创 2019-11-01 12:34:52 · 1005 阅读 · 1 评论