Está en la página 1de 1

Búsqueda por llaves

Consiste en revisar la estructura de datos elemento hasta encontrar el dato que estamos
buscando, o hasta llegar al final de la estructura de datos.
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.

• ¿Qué es un algoritmo hash y para qué se utiliza?


Es un algoritmo matemático que transforma cualquier bloque arbitrario de datos en
una nueva serie de caracteres con una longitud fija. Independientemente de la
longitud de los datos de entrada, el valor hash de salida tendrá siempre la misma
longitud.
El hash es muy utilizado en la gestión de los identificadores y contraseñas.
Cuando una persona accede a un Saas (Software as a service), el sistema debe
comprobar previamente que el usuario y la contraseña introducidas son correctas
para poder acceder al servicio.

• ¿Qué es una tabla hash?


Es una estructura de datos que asocia llaves o claves con valores. La operación
principal que soporta de manera eficiente es la búsqueda que permite el acceso a
los elementos almacenados a partir de una clave generada.

• ¿Qué se entiende por colisión?


Se denomina colisión al hecho de que dos elementos de entrada diferentes
generen un mismo elemento como resultado de aplicar un algoritmo.
Una colisión de hash es una situación que se produce cuando dos entradas
distintas a una función de hash producen la misma salida.

• Al menos un método de resolver las colisiones


*Prueba lineal: Consiste en que una vez la colisión se debe recorrer el vector
secuencialmente a partir de detección hasta el elemento. El proceso de búsqueda
concluye cuando el elemento es hallado o cuando se encuentra una posición
vacía. Se trata al arreglo como una estructura circular. El siguiente elemento
después del último es el primero.

*Encadenamiento: Consiste en que cada elemento del arreglo tenga un apuntador


a una lista ligada, la cual se irá generando e irá almacenando los valores
colisionados a medida que se requiera.

También podría gustarte