在 JavaScript 中实现二分查找算法

实现

function binarySearch(arr: number[], target: number): number {
let lower: number = 0;
let upper: number = arr.length - 1;
let pos: number = -1;

while (lower <= upper) {
const mid: number = Math.floor((lower + upper) / 2);
const num: number = arr[mid];

if (num < target) {
lower = mid + 1;
} else if (num > target) {
upper = mid - 1;
} else {
pos = mid;
break;
}
}

return pos;
}