Construir un programa que implemente el algoritmo de búsqueda binaria para encontrar un elemento en un arreglo ordenado. Este método es mucho más eficiente que la búsqueda secuencial, reduciendo el espacio de búsqueda a la mitad en cada iteración.
IZQ ← 1, DER ← N, BAN ← 1IZQ ≤ DER y BAN = 1:CEN ← (IZQ + DER) DIV 2X = VECTOR[CEN]: elemento encontrado (BAN ← 0)X > VECTOR[CEN]: buscar en mitad derecha (IZQ ← CEN + 1)X < VECTOR[CEN]: buscar en mitad izquierda (DER ← CEN - 1)BAN// Entrada: Ingrese número de elementos: 7 Ingrese los 7 datos (deben estar ordenados): 10 20 30 40 50 60 70 Ingrese el dato a buscar: 40 // Salida: ========================================= El elemento SI está en el arreglo ========================================= // Ejemplo 2 - Elemento no encontrado: Ingrese el dato a buscar: 25 // Salida: ========================================= El elemento NO está en el arreglo =========================================
Asegúrate de:
BAN es una bandera: 1 = no encontrado, 0 = encontradoDIV) para calcular el centroEl diagrama está dividido en tres partes:
Diagrama de flujo completo del algoritmo de búsqueda binaria