Una búsqueda binaria busca el valor medio (mediana), realiza una comparación para determinar si el valor buscado viene antes o después y luego busca la mitad restante de la misma manera. La Búsqueda Binaria se realiza para:
a) Minimizar el número de operaciones de comparación que deben realizarse entre los datos que se buscan y los datos de la tabla, especialmente para cantidades muy grandes de datos.
b) La carga computacional es menor porque la búsqueda se realiza desde adelante, atrás y en medio.
c) El principio básico es llevar a cabo el proceso de dividir el espacio de búsqueda repetidamente hasta que se encuentren los datos o hasta que el espacio de búsqueda no se pueda dividir más (lo que significa que existe la posibilidad de que no se encuentren los datos).
d) Y la condición principal para la búsqueda binaria en este sencillo programa en lenguaje C++ es que los datos de la tabla deben estar ordenados.
Algoritmo de búsqueda binaria de C++
1. Primero, la posición inicial es 0 y la posición final = N - 1, luego se busca la posición de datos intermedia usando la fórmula (posición inicial + posición final) / 2. Luego, los datos buscados se comparan con los datos intermedios. 2. Luego buscamos la posición de los datos del medio con la fórmula de la posición media, es decir = (posición inicial + posición final) div 2. 3. Luego, los datos que estamos buscando se compararán con los datos del medio a. Si se encuentran los mismos datos, el proceso se completa. b. Si es menor, entonces el proceso se realizará nuevamente, pero la posición final se considera igual que la posición media -1. C. Si es mayor se volverá a realizar el proceso pero se considera la posición inicial igual que la posición media +1. 4. Repita desde el paso dos hasta que se encuentren o no se encuentren datos. 5. Esta búsqueda binaria finalizará si se encuentra que los datos están en una posición inicial mayor que la posición final. Si la posición inicial es mayor que la posición final, significa que no se encontraron los datos.Buscar utilizando el método de búsqueda binaria
#incluirusando el espacio de nombres estándar; int principal () { int n, número[12], izquierda, derecha, centro, temperatura, clave; bool cumplir = falso;
corte<<'HARDIFAL'<
para(int i=0; i
piel=0; kanan=n-1;
mientras (piel<=kanan) { centro=(izquierda + derecha)/2; si (clave == número [medio]) { cumplir=verdadero; romper; } si no (clave
Salida: ejemplo de un programa C++ de búsqueda binaria simple