Está en la página 1de 18

Algoritmos y Estructuras de

Datos
BUSQUEDA
LOGRO

Al finalizar la sesión el estudiante comprenderá y utilizará


adecuadamente las operaciones con búsqueda en el
desarrollo de soluciones.
Búsqueda
• La búsqueda es un proceso que tiene por finalidad localizar un
elemento dentro de una lista de elementos.

• El resultado de este proceso de búsqueda, puedes ser que encuentre


o no el elemento buscado.

• La búsqueda se realiza en cualquier actividad del ser humano. Por


ejemplo: búsqueda de una palabra en un diccionario, búsqueda de un
número telefónico en la guía, etc.
• Búsqueda de una dirección.
Búsqueda
• La búsquedas se realizan sobre elementos ordenados ó sobre
elementos no ordenados.
• Si los elementos están ordenados la búsqueda toma menos tiempo.
Búsqueda
• La búsqueda se clasifica en Interna y Externa.
• Búsqueda interna.- Se realiza cuando los elementos se encuentran en
memoria principal.
• Búsqueda externa.- Se realiza cuando los elementos se encuentran en
memoria secundaria (ejemplo: disco duro).
Búsqueda Interna
• Esta búsqueda trabaja con elementos que se encuentran en memoria
principal.
• Los elementos pueden estar almacenados en estructuras estáticas
como: arreglos, en estructuras dinámicas como listas enlazadas y
árboles
Búsqueda
Métodos:
• Secuencial o Lineal
• Binaria
• Por transformación de claves (Hash)
• Árbol de Búsqueda
Búsqueda Secuencial
• Consiste en revisar elemento por elemento hasta encontrar el dato
buscado o hasta llegar al final de la lista de datos.
• Búsqueda en arreglos no ordenados.
• consiste en recorrer todo el arreglo elemento por elemento y
comparar cada elemento con el valor buscado. Se recorre desde el
primer elemento hasta el ultimo elemento, la comparación termina
cuando se encuentra el primer elemento buscado o hasta que se
termine el arreglo.
Búsqueda Secuencial

• Ejemplo: buscar el número 15.

• Empezamos por el primer elemento del arreglo y


lo comparamos con el valor a buscar (15), si no es
igual avanzamos hacía el segundo elemento.
Realizamos el mismo proceso hasta llegar al final
del arreglo.
• La búsqueda en este caso es un fracaso.
Búsqueda Secuencial
• La búsqueda secuencial en arreglos ordenados, consiste en recorrer
todo el arreglo de izquierda a derecha, hasta que se cumpla una de
estas condiciones:
• Se encuentre el primer elemento buscado.
• El elemento del arreglo sea mayor al valor a buscar.
• Se termine el arreglo
Búsqueda Secuencial

• Ejemplo: buscar el número 9.

• Comparamos el primer elemento del arreglo (5)


con el valor a buscar (9), si es menor avanzamos
hacía el segundo elemento.
• Comparamos el 7 con el 9, como es menor
avanzamos.
Búsqueda Secuencial

• Ejemplo: buscar el número 9.

• Comparamos el 8 con el 9, como es menor


avanzamos.
• Comparamos el 10 con el 9, como es mayor,
detenemos la búsqueda.
Búsqueda Binaria
Consiste en dividir los datos de búsqueda en dos partes, comparando
el elemento a buscar con el elemento que está en el medio del
arreglo.
• Si no es igual, continuamos la búsqueda en una de las dos partes.
• Vamos a la parte izquierda si el número a buscar es menor que el
número central
Búsqueda Binaria
Vamos a la derecha si el número a buscar es mayor que el número
central.
• Este proceso se realiza varias veces hasta encontrar el número ó hasta
que no existan mas números en cada parte.
Búsqueda Binaria

Ejemplo: buscar el número 8

Dividimos en 2 grupos iguales

Comparamos el 8 con el número del medio


(12), como no son iguales. Tomamos uno
de los grupos formados.
Búsqueda Binaria

Como el 8 es menor que el 12, tomamos el grupo de


la izquierda

Dividimos el grupo y el número del medio el


7 lo comparamos con el 8, no son iguales.
Búsqueda Binaria

Como el 8 es mayor que el 7 tomamos el grupo de


números que está a la derecha. El nuevo grupo
sería:

Volvemos a dividir el grupo y el número del


medio sería el 8, como son iguales la
búsqueda ha sido un éxito.
Preguntas

También podría gustarte