int main() {
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
int k = 7;//要查找的数字
//在arr这个有序数组中查找k(7) 的值
int sz = sizeof(arr) / sizeof(arr[0]); //数组元素个数
int left = 0;
int right = sz - 1;
while (left<=right) {
int mid = (left + right) / 2;
if (arr[mid] < k)
{
left = mid + 1;
}
else if (arr[mid] > k) {
right = mid - 1;
}
else
{
printf("找到了,k的下标为%d\n", mid);
break;
}
}
if (left > right) {
printf("找不到了\n");
}
return 0;
}
C语言 二分法 有序数组中查找具体的数字n
最新推荐文章于 2024-05-20 20:08:58 发布