Binary Search Problem
Showing problem with Binary Search
by jessekinsman
HTML
<div id="container"></div>
JavaScript
function binarySearch(arr, item) {
let startIndex = 0;
let endIndex = arr.length - 1;
while (startIndex < endIndex) {
let middleIndex = Math.floor((startIndex + endIndex) / 2);
if (arr[middleIndex] === item) {
return `Found at index ${middleIndex}`;
}
if (arr[middleIndex] < item) {
startIndex = middleIndex + 1;
} else {
endIndex = middleIndex - 1;
}
}
return `Not Found ${item}`;
}
function nodeFactory(nodeType, contents) {
var node = document.createElement(nodeType);
node.innerHTML = contents;
return node;
}
var container = document.getElementById('container');
var result = binarySearch([5, 10, 20, 30, 40], 30);
var resultNode = nodeFactory("p", result);
container.append(resultNode);
result = binarySearch([5, 10, 20, 30, 40], 10);
var resultNode = nodeFactory("p", result);
container.append(resultNode);
result = binarySearch([5, 10, 20, 30, 40], 40);
var resultNode = nodeFactory("p", result);
container.append(resultNode);