首页 > 其他 > 详细

二分查找

时间:2018-08-14 10:12:24      阅读:188      评论:0      收藏:0      [点我收藏+]
 1 int inSearch(int a[], int size, int b)
 2 {
 3     int mid = -1, i = 0, j = size - 1;
 4     while(i <= j)
 5     {
 6         mid = (i + j) / 2;
 7         if (b > a[mid])
 8             i = mid + 1;
 9         else if (b == a[mid])
10             break;
11         else
12             j = mid - 1;
13     }
14     if (i <= j)
15         return mid;
16     else
17         return -1;
18 }

注意while循环判断条件是 i <= j。如果是 i < j 的话,当i,j指向一个元素时会不满足条件跳出循环。

二分查找

原文:https://www.cnblogs.com/lxc1910/p/9472698.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!