我很高兴能进入大学,来开始新的进程
今天第一个复习算法 二分查找
bool binary_search(){
int l = 0,r = n * n;
while(r - l >= 1){
int i = (l + r)/2;
if(k[i] == x) return true;
else if (k[i] < x) l = i + 1;
else r = i;
}
return false;
}
1.排好序之后才能用
2.时间复杂度 O(nlogn)
技巧:4重循环——>2个双重循环
O(n^4)——>O(n^2 logn)