评论

收藏

[C++] 二分法查找有序数组中某数的下标

编程语言 编程语言 发布于:2021-07-09 09:47 | 阅读数:252 | 评论:0

  int main()
{
    int arr[]={1,2,3,4,5,6,7,8,9,10,11};
    int 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)
    {
        right=mid-1;
    }
    else if (arr[mid]<k)
    {
        left=mid+1;
    }
    else
    {
    printf("找到了,k的下标是%d\n",mid);
    break;
    }
    }
    return 0;
}

  
关注下面的标签,发现更多相似文章