官方题解
2024-03-21 16:57:06
发布于:浙江
25阅读
0回复
0点赞
要在一个有序序列中查找一个数,可以使用二分算法。
#include <iostream>
using namespace std;
int a[110];
int main() {
int n, x;
cin >> n;
for (int i = 1; i <= n; i++) cin >> a[i];
cin >> x;
int l = 1, r = n;
while (l <= r) {
int mid = (l + r) / 2;
if (a[mid] == x){
cout << mid;
return 0;
} else if (a[mid] > x) r = mid - 1;
else l = mid + 1;
}
cout << -1;
return 0;
}
这里空空如也
有帮助,赞一个