Page 1

PAGINA

Quest Magazine

Edición: Métodos de Búsqueda


CONTENIDO Métodos de Búsqueda

3

¿Qué es una Búsqueda?

4

Búsqueda Lineal Búsquedas Secuenciales y Binarias

5 6

Búsqueda por transformación de claves 8 Árbol Binario de Búsqueda

9

EDITORES: Claudia Esser / Angelica García Barquisimeto, Noviembre’2010


PAGINA 3

Métodos De Búsqueda. La recuperación de información es una de las aplicaciones más importantes de las computadoras. Por ello esta edición está enfocada en los métodos de búsqueda en vectores.


Pero, ¿Qué es una BÚSQUEDA? La búsqueda es una operación que tiene por objeto la localización de un elemento dentro de una estructura de datos. Hoy en día los programadores se enfrentan al manejo de grandes cantidades de datos, siendo los mismos almacenados en arreglos . Más adelante podrá requerirse la revisión de cualquiera de los datos contenidos, por consiguiente será necesario utilizar el método de búsqueda más apropiado dependiendo de las necesidades del programador. Por ejemplo: para realizar una búsqueda en un arreglo de una dimensión pueden utilizarse uno de estos dos métodos de acceso: búsqueda lineal y búsqueda binaria.


PAGINA 5

Búsqueda Lineal consiste en recorrer el arreglo secuencialmente hasta dar con la clave buscada y en ese punto devolver el índice.

Este método funciona bien con arreglos pequeños o para arreglos no ordenados. EJEMPLO: Algoritmo: Recorrer el vector de inicio a fin, comparando el dato buscado

con

cada

elemento

del

arreglo.

Implementación: La función que realiza una búsqueda lineal de un valor entero en un vector de enteros. La función recibe como parámetros el vector, la cantidad de elementos que hay en el vector (N) y el valor entero que se busca. Si se encuentra el valor entonces se devuelve la posición de este, sino se devuelve la cantidad de elementos del vector


Este

método se carac-

teriza por dividir la lista varias veces hasta que se consiga el elemento buscado, comenzando por el elemento central en la lista y si no es el que se busca a su vez divide las partes superior e inferior de esa lista repitiendo siempre el mismo proceso hasta que finalice la búsqueda.  

Útil para vectores ordenados Factible para vectores con grandes cantidades de elementos.


PAGINA 7

Este método Consiste en recorrer el arreglo elemento a elemento e ir comparando con el valor buscado (clave). Este tipo de búsqueda compara cada elemento del vector con el valor a encontrar hasta que este se consiga o se termine de leer el vector completo. Cuando finalice se debe visualizar un mensaje similar a “Fin de Búsqueda” o “Elemento encontrado” y otro que diga “posición=” en caso contrario, se muestra un mensaje similar a “Elemento no existe en la Lista”. Este método hace un uso excesivo de tiempo en la localización del elemento a encontrar si el vector contiene grandes cantidades de elementos, ya que recorre todo el vector; por lo tanto No es factible para vectores con grandes números de elementos.


PAGINA 9

Búsqueda por transformación de claves

En este método cada dato es identificado por una clave.

La función Hash aplicada, da un índice del array, permitiendo acceder directamente a sus elementos

Convierte la clave dada (numérica o alfanumérica) en una dirección (índice) dentro del array. La correspondencia entre las claves y la dirección en el medio de almacenamiento o en el array se establece por una función de conversión (función hash). Las funciones HASH (H) más aplicadas son: 

Función Módulo (por división).

Función Cuadrado. Función Plegamiento.

 

Función Truncamiento.


Árbol Binario de Búsqueda Cumple que el subárbol izquierdo de cualquier nodo (si no está vacío) contiene valores menores que el que contiene dicho nodo, y el subárbol derecho (si no está vacío) contiene valores mayores. Hay una relación de orden establecida entre los elementos de los nodos. Dicha relación puede estar o no definida dependiendo de cada lenguaje de programación . Deduciendo así que puede haber distintos árboles binarios de búsqueda para un mismo conjunto de elementos.


PAGINA 11

Métodos de Búsqueda Búsqueda Secuencial / Lineal

El proceso de búsqueda secuencial es una de las operaciones más comunes en la manipulación de arreglos. Puede definirse como el proceso de determinar el elemento, o su posición, que cumple una condición, comparando con cada uno de los elementos en forma secuencial. Es el método de búsqueda recomendado cuando se tiene un arreglo en el cual no se conoce la relación entre sus elementos, es decir estos están desordenados QUE SE TIENE: Para llevar a cabo esta tarea se requiere de la siguiente información de entrada: • El arreglo • La dimensión del arreglo • La condición: el valor a buscar

QUE SE PIDE: Determinar La posición POS donde se encuentra VALOR en el arreglo A. Note que tiene dos posibles resultados: • Encontrar VALOR en A • No encontrar VALOR en A

COMO LOGRARLO: Para llevar a cabo esta tarea se requiere de tres pasos: • Asumir que VALOR no se encuentra en el arreglo • Recorrer el arreglo hasta encontrar o no encontrar VALOR en el arreglo • Determinar si encontró o no el VALOR: • Encuentra VALOR en el arreglo cuando termina la búsqueda y no ha terminado de recorrer todo el arreglo. En este caso POS almacena la posición donde se encuentre VALOR en X. • No encuentra VALOR en el arreglo, En este caso termina de recorrer el arreglo. POS almacena la posición donde se encuentre VALOR en X. Quedando POS con el valor cero.

{ Proceso de Búsqueda Secuencial de VALOR en el arreglo A } { Inicializaciones } POS := 0; I := 1; { Recorrido del arreglo buscando VALOR } While ( ( I< = N ) and ( A[ I ] <> VALOR ) ) do I := I + 1; { Determinar si encontró o no } If I <= N then POS := I;


E

xisten distintos métodos de búsqueda dependiendo

de las necesidades del programador, hay métodos de acceso más rápidos q otros, en los cuales el tiempo de búsqueda es independiente de los elementos que contengan el arreglo y las dimensiones del mismo. Las aplicaciones pueden ser infinitas, ya que son utilizados en diferentes rutinas diarias. Decimos que la elección del método de ordenamiento está directamente relacionada con la estructura de los registros del archivo y del soporte utilizado. Es por ello que los métodos de búsqueda seleccionados para “x” arreglos serán correspondientes a la complejidad y a lo que sea requerido por parte del programador.


PAGINA 13

REFERENCIAS INFORMATIVAS http://www.monografias.com/trabajos55/ metodo-de-la-burbuja/metodo-de-laburbuja2.shtml http://www.mailxmail.com/curso-aprendeprogramar/metodos-ordenamientobusqueda http://members.fortunecity.com/estructura8/ tareas/tarea5.htm

QuestMagazine  

Metodos de Busqueda en Vectores

Read more
Read more
Similar to
Popular now
Just for you