【发布时间】:2017-04-14 08:17:52
【问题描述】:
嘿,我想找到二分搜索的比较次数,我用这种方法来计算比较次数。然而,它总是返回 -1,因为尽管数组包含数字,但它没有找到 numsearch。 这是我的方法..count指的是比较的次数。
public static int BinarySearch (int n, Integer[] ran) {
int low = 0;
int high = ran.length-1;
int count = 0;
int middle;
while (low<=high) {
count++;
middle = (high - low)/2;
if (ran[middle] == n) {
return count;
}
else if (ran[middle] > n) {
high = middle - 1;
}
else {
low = middle + 1;
}
}
return -1;
}
【问题讨论】:
标签: java search binary-search