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:
- Se determina el elemento medio del array.
- Si el elemento buscado es igual al medio, la búsqueda termina.
- Si el elemento buscado es menor que el medio, la búsqueda continúa en la mitad izquierda del array.
- Si es mayor, en la mitad derecha.
- 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")
}