定义二分法查找数组中的数,实现arrays.binarySearch()int类型的功能。

来源:互联网 发布:怎么投诉淘宝公司 编辑:程序博客网 时间:2024/05/17 23:05
public static int ef(int a[], int n) {
// 砍半取中间值进行比较
int s = 0, e = a.length - 1;
int m = (s + e) / 2;
while (a[m] != n && e > s) {
// 在前半部分
if (a[m] > n) {
e = m - 1;
}
// 在后半部分
else if (a[m] < n) {
s = m + 1;
}
m = (s + e) / 2;
}
//
if (a[m] == n) {
return m;
} else {
return -1;
}
阅读全文
1 0
原创粉丝点击