int binary_search(const vector<int>& matrix, int target) {
int start = 0, end = matrix.size() - 1;
while (start < end) {
int mid = start + (end - start)/2;
if (matrix[mid] <= target) { // if (matrix[mid] < target)
start = mid + 1;
} else {
end = mid;
}
}
return end;
}
int main()
{
cout << binary_search({1, 3, 7, 10, 20}, 15);
return 0;
}
[嗨,我在while循环中混淆了<
二进制搜索中最令人困惑的部分是,我永远都不确定在条件语句中使用哪个“ <=”或“
即使我有一个基本的想法,但是在编码方面,我怎么能确定并确保它应该是“ <=”,那个应该是“
我很高兴有人可以输入。
谢谢!
实际上是