Sobes.tech
Junior — Middle

Explique el principio de funcionamiento del algoritmo de búsqueda binaria y sus características.

sobes.tech AI

Respuesta de la IA

El algoritmo de búsqueda binaria se utiliza para encontrar un elemento en un array o lista ordenada. Su principio:

  1. Se determina el elemento medio del array.
  2. Si el elemento buscado es igual al medio, la búsqueda termina.
  3. Si el elemento buscado es menor que el medio, la búsqueda continúa en la mitad izquierda del array.
  4. Si es mayor, en la mitad derecha.
  5. El proceso se repite de forma recursiva o iterativa hasta que se encuentra el elemento o se agota el rango de búsqueda.

Características:

  • Solo funciona con datos ordenados.
  • Complejidad — O(log n), mucho más rápido que la búsqueda lineal.
  • Requiere acceso a los elementos por índice (por ejemplo, array).

Ejemplo en Swift:

func binarySearch(_ array: [Int], _ target: Int) -> Int? {
    var left = 0
    var right = array.count - 1
    
    while left <= right {
        let mid = (left + right) / 2
        if array[mid] == target {
            return mid
        } else if array[mid] < target {
            left = mid + 1
        } else {
            right = mid - 1
        }
    }
    return nil
}

let numbers = [1, 3, 5, 7, 9]
if let index = binarySearch(numbers, 7) {
    print("Elemento encontrado en la posición \(index)")
} else {
    print("Elemento no encontrado")
}