Я пробовал двоичный поиск в моей хром-консоли. Но когда я побежал код, весь хром был повешен, и я должен был убить страницы:Почему эта реализация бинарного поиска делает браузер невосприимчивым?
var arr = [1, 3, 5, 8];
var binary = function (arr, search) {
var low = 0;
var high = arr.length - 1;
var mid = (high + low)/2;
while (low <= high) {
if (search === arr[mid]) {
return mid;
} else if (search > arr[mid]) {
low = mid + 1;
} else {
high = mid - 1;
}
}
return -1;
};
console.log(binary(arr, 3));