2. Es un algoritmo de búsqueda que encuentra el
índice de la posición de un valor X en un vector
ordenado (ascendente o descendente),
estableciendo un limite inferior, limite superior y el
centro de estos limites, para comparar el valor X
buscado con el elemento que este en la posición
centro, si son iguales se retorna el índice centro, en
caso de no ser así, la mitad en la cual el valor X no
puede estar, es descartada y la búsqueda continúa
en la mitad restante(estableciendo un nuevo valor
para alguno de los limites) hasta que el valor X sea
encontrado y en caso de no hallar el valor X se
retorna -1.
Búsqueda Binaria
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
3. Inferior
Superior
= 0
= n - 1
Búsqueda Binaria
ALGORITMOSea V un Vector de n casillas
Limite Inferior será igual a la primera posición
Limite Superior será igual a la ultima posición
V debe estar ordenado
X Es el valor buscado
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
4. Búsqueda Binaria
Centro =
Inferior +
Superior
1
Si X
¡Encontrado!
V[ ]
Si Centro < XV[ ]
Centro=
Sino
Sino
- 1Centro=
Está a la derecha
Está a la izquierda
Centro = Inferior + Superior( ) DIV 2
ALGORITMO
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
5. Búsqueda Binaria
[0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
24 32 38 40 45 56 61 70 77 82
Vector V con 10 casillas
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
6. Búsqueda Binaria
[0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
24 32 38 40 45 56 61 70 77 82
X = 61
Elemento a buscar
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez