Skip to content

Instantly share code, notes, and snippets.

@spersico
Created January 16, 2022 05:18
Show Gist options
  • Save spersico/a066b73fb15e94476e9868f2898a0436 to your computer and use it in GitHub Desktop.
Save spersico/a066b73fb15e94476e9868f2898a0436 to your computer and use it in GitHub Desktop.
Busqueda Binaria Ejemplo
// Algoritmo de busqueda binaria, asume que el array está ordenado,
// y va reduciendo el area de analisis hasta encontrar el elemento
function binarySearchIndex(array, value) {
let start = 0;
let end = array.length-1;
while (start<=end){
// Obtiene el indice del centro del array
const mid = Math.floor((start + end) / 2);
// Si el elemento buscado está en el indice, devuelve ese indice
if (array[mid]===value) {
return mid;
}
// Si no se fija si el elemento es mayor o menor que el que está
// en el medio, y setea un nuevo limite superior o
// inferior de acuerdo al resultado.
else if (array[mid] < value) {
start = mid + 1;
} else {
end = mid - 1;
}
}
return -1;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment