1.前提
其实我觉得很多时候,问题并不是难,而是问题中充斥着不确定。我们经常不能确定某一处肯定是对的,从而去推导另一处到底错在什么地方,这通常就是问题的痛点。所以我想收集一下,确定是对的观点。
2.观点
二分查找
liweiwei1419大佬的二分模板,比较喜欢用其中的
//判断0的时候是否就已经符合题意
l = 0;
r = lenl;
while (l < r)
{
mid = l + (r - l) / 2;
//书写选取mid时的逻辑;
if (check(mid)
l = mid + 1
else
r = mid;
}
//判断是否0或者end,0在开始时已经判断过,这里再出现的话就必定是错误的
//end不用说,不能访问的,收缩到end必然错误
barrier的使用
pthread中的barrier可以这样使用
for (; ;)
{
//逻辑1
barrier;
//逻辑2
barrier;
//逻辑3
barrier;
}