Junior — Middle
¿Puede dar ejemplos de algoritmos para buscar elementos en estructuras de datos?
sobes.tech AI
Respuesta de la IA
Para buscar elementos en estructuras de datos, a menudo se utilizan los siguientes algoritmos:
- Búsqueda lineal (Linear Search) — recorrer los elementos uno por uno, adecuado para arreglos no ordenados.
- Búsqueda binaria (Binary Search) — eficiente para arreglos ordenados, divide el área de búsqueda a la mitad en cada paso.
- Búsqueda en árboles (por ejemplo, búsqueda en árbol binario de búsqueda) — recorrido recursivo o iterativo para encontrar un elemento.
- Búsqueda en tablas hash — acceso rápido por clave mediante función hash.
Ejemplo de búsqueda binaria 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
}