Sobes.tech
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
}