小编shi*_*ira的帖子

c 上的二分查找,while 循环

在 C 上的二进制搜索代码中有一些我没有得到的东西。

int binarySearch(int a[], int n, int x)
{
   int low=0, mid, high=n-1;
   while(low <= high)
   {
        mid = (low + high) / 2;
        if (x < a[mid])
            high = mid - 1;
        else if (x > a[mid])
         low = mid + 1;
       else
         return mid;
   }
   return -1;
}
Run Code Online (Sandbox Code Playgroud)

为什么while循环while(left<=right)不能写: while(left<right)?这种变化会影响事情吗?

c binary search

4
推荐指数
2
解决办法
1万
查看次数

标签 统计

binary ×1

c ×1

search ×1