二分查找
Posted lxc1910
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二分查找相关的知识,希望对你有一定的参考价值。
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指向一个元素时会不满足条件跳出循环。
以上是关于二分查找的主要内容,如果未能解决你的问题,请参考以下文章