JSFiddle - React, Tailwind, and code Playground
by sushant_ceb
JavaScript
// Binary Search
function findIndex(values, target)
{
return binarySearch(values, target, 0, values.length - 1);
};
function binarySearch(values, target, start, end) {
if (start > end) { return -1; } //does not exist
var middle = Math.floor((start + end) / 2);
var value = values[middle];
if (value > target) { return binarySearch(values, target, start, middle-1); }
if (value < target) { return binarySearch(values, target, middle+1, end); }
return middle; //found!
}
console.log(findIndex([2, 4, 7, 9, 13, 15], 13));