-
-
Save spersico/a066b73fb15e94476e9868f2898a0436 to your computer and use it in GitHub Desktop.
Busqueda Binaria Ejemplo
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// 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