public static int binarySearch(int[] a, int target) {
int i = 0, j = a.length - 1;
while (i < j) {
int m = (i + j) >>> 1;
if (target < a[m]) { // 在左边
j = m - 1;
} else if (a[m] < target) { // 在右边
i = m + 1;
} else {
return m;
}
}
return -1;
}