【发布时间】:2020-08-23 16:04:11
【问题描述】:
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 循环中的“
二分搜索最令人困惑的部分是我永远不确定在条件语句中使用“
即使我有一个基本的想法,但是当涉及到编码时,我怎么能自信并确定这应该是“
如果有人可以输入,我将不胜感激。
谢谢!
【问题讨论】:
标签: arrays algorithm c++11 binary-search