2. Unidad 6
métodos de búsqueda
Los métodos de búsqueda nos permiten recuperar datos previamente almacenados. El resultado de
una búsqueda puede ser un éxito, si se encuentra la información o un fracaso, si no la encuentra.
La búsqueda se puede aplicar sobre elementos previamente ordenados o sobre elementos
desordenados, se trata de encontrar una cantidad de elementos similares.
Los métodos de búsqueda se clasifican en:
- Búsqueda interna.
- Búsqueda externa.
Búsqueda interna.
La búsqueda interna es aquella en la que todos los elementos de la estructura estática (arreglo) o
dinámica (lista ligada o árbol) se encuentran almacenados en la memoria principal de la computadora.
Los métodos de búsqueda interna más importantes son:
- Secuencial o lineal.
- Binaria.
- Hash (transformación de claves)
3. Secuencial.
El método de búsqueda secuencial consiste en revisar la estructura de datos
elemento por elemento hasta encontrar el dato que estamos buscando, o hasta llegar
al final de la estructura de datos.
Binaria.
El método de búsqueda binaria divide el total de los elementos en dos, comparando
el elemento buscado con el central, en caso de no ser iguales, se determina si el
elemento buscado es menor o mayor al central, para determinar si la búsqueda
continua del lado izquierdo (menor) o derecho (mayor) del central, repitiendo el
mismo proceso de división y comparación, hasta encontrar el elemento buscado o
que la división ya no sea posible.
Ejemplo. Si tenemos una estructura ordenada 0, 1, 2, 3, 5, 5, 5, 7, 8, 9 y estamos
buscando el número 5, el resultado de la búsqueda nos mostraría la posicione
4 y el proceso terminaría ya que el elemento buscado no es diferente al que esta en
la posición central.
4. hash
El método de búsqueda hash o por transformación de clave aumenta la velocidad de búsqueda sin
necesidad de que los elementos estén previamente ordenados, comparándolo con los métodos
anteriores. Además tiene la ventaja de que el tiempo de búsqueda es independiente del número de
elementos de la estructura que los almacena.
Este método permite que el acceso a los datos sea por una llave que indica directamente la
posición donde están guardados los datos que se buscan. Prácticamente trabaja con una función
que transforma la llave o dato clave en una dirección (índice) dentro de la estructura y que en
ocasiones puede generar una colisión, que se define como una misma dirección para dos o más
claves distintas.
Ejemplo. Si tenemos un total de 100 elementos y dos claves que sean 7259 y 9359, las
direcciones generadas son las siguientes:
La función módulo o por división
dirección = (clave % total elementos)
dirección = (7259%100) = 59
dirección = (9359%100) = 59
dirección = (7259%97) = 81
dirección = (9359%97) = 47
5. Conclusión
Los métodos de búsqueda de dato son herramientas que facilitan al
programador y usuario el buscar pronta y efectivamente datos
previamente ordenados para algún uso en particular