二分查找
Posted wenjianes
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二分查找相关的知识,希望对你有一定的参考价值。
static int binarySearch(int[] array, int size, int value) {
int lo = 0;
int hi = size - 1;
while (lo <= hi) {
final int mid = (lo + hi) >>> 1;
final int midVal = array[mid];
if (midVal < value) {
lo = mid + 1;
} else if (midVal > value) {
hi = mid - 1;
} else {
return mid; // value found
}
}
return -1; // value not present
}
主要是为了熟悉各种基本算法,在需要的时候能尽快找到,这里并没有进行参数校验
>>> 是无符号位移符号,右移一位,高位以0补齐,不考虑符号
以上是关于二分查找的主要内容,如果未能解决你的问题,请参考以下文章