Sobes.tech
Junior — Middle

¿Cómo se determina la complejidad temporal del algoritmo de búsqueda binaria?

sobes.tech AI

Respuesta de la IA

La complejidad temporal del algoritmo de búsqueda binaria se define como O(log n), donde n es la cantidad de elementos en el array ordenado. Esto se debe a que en cada paso el algoritmo divide el rango de búsqueda a la mitad, reduciendo la cantidad de elementos considerados a la mitad, hasta encontrar el elemento buscado o confirmar su ausencia.

Ejemplo en Go:

func binarySearch(arr []int, target int) int {
    left, right := 0, len(arr)-1
    for left <= right {
        mid := left + (right-left)/2
        if arr[mid] == target {
            return mid
        } else if arr[mid] < target {
            left = mid + 1
        } else {
            right = mid - 1
        }
    }
    return -1 // elemento no encontrado
}