SlideShare uma empresa Scribd logo
1 de 14
Universidad 
Nacional de 
Costa Rica 
Hash : 
-Método de división. 
-Método del medio 
cuadrado.
Hash: 
Una función hash H es una función 
computable mediante un algoritmo, 
H: U → M 
x → h(x), 
que tiene como entrada un conjunto de 
elementos, que suelen ser cadenas, y los 
convierte (mapea) en un rango de salida 
finito, normalmente cadenas de longitud 
fija.
Uso de funciones Hash: 
proteger la 
confidencialidad de una 
contraseña 
garantizar la integridad 
de los datos.
verificar la identidad del emisor de un mensaje 
mediante firmas digitales.
Colisión: 
Un problema potencial encontrado en el 
proceso hash, es que tal función no puede 
ser uno a uno; las direcciones calculadas 
pueden no ser todas únicas, cuando 
H(K1) = H(K2). 
Si K1 es diferente de K2 decimos que hay 
una colisión. A dos claves diferentes que les 
corresponda la misma dirección relativa se 
les llama sinónimos.
Método de División 
La función de este método es dividir el valor 
de la llave entre un numero apropiado, y 
después utilizar el residuo de la división 
como dirección relativa para el registro. 
F(hash) = llave % divisor.
Existen varios factores que deben 
considerarse para seleccionar el divisor: 
 divisor > n : 
suponiendo que 
solamente un 
registro puede ser 
almacenado en 
una dirección 
relativa dada. 
 Seleccionarse el 
divisor de tal forma 
que la 
probabilidad de 
colisión sea 
minimizada.
Uso: 
Cuando la distribución de los valores de llaves 
no es conocida.
Ejemplo: 
Si la tabla hash tiene 
tamaño m = 12 y la llave 
es 
k = 100, entonces 
h(k) = 100 mod 12 = 4.
Método de medio 
cuadrado 
Consiste en elevar al cuadrado la clave y tomar los 
dígitos centrales como dirección. El número de 
dígitos a tomar queda determinado por el rango 
del índice. Sea K la clave del dato a buscar, la 
función hash queda definida por la siguiente 
formula: 
H(K) = digitos_centrales (K^2) + 1 
Las suma de los dos dígitos centrales de la clave K 
(elevada al cuadrado) más 1, debe obtener un 
valor entre 1 y N (N, tamaño del arreglo).
Uso: 
puede aplicarse en archivos con factores de 
cargas bastantes bajas
Ejemplo: Sea N=100 el tamaño del 
arreglo. 
Sea su dirección los números 
entre 1 y 100. 
Sea K1 = 7259 una clave a la 
que se le debe asignar una 
posición en el arreglo. 
K1^2 = 52 693 081 
H(K1) = ( 52 693 081 ) + 1 = 94
EJERCICIO 
C++
Gracias! 
Estudiantes: 
Mª Analive Castro Vargas. 
Andrés Dalolio Aguilar. 
Fernando Navarro Juárez.

Mais conteúdo relacionado

Mais procurados

Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfijaOmarzingm
 
Ordenamientos burbuja e inserción
Ordenamientos burbuja e inserciónOrdenamientos burbuja e inserción
Ordenamientos burbuja e inserciónAlvaro Enrique Ruano
 
Metodos de-ordenamiento
Metodos de-ordenamientoMetodos de-ordenamiento
Metodos de-ordenamientodeff000001
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..NANO-06
 
Algoritmos de busqueda
Algoritmos de busquedaAlgoritmos de busqueda
Algoritmos de busquedaJohnfornerod
 
Informe algoritmos de busqueda
Informe algoritmos de busquedaInforme algoritmos de busqueda
Informe algoritmos de busquedaGonzalo Retamal
 
BúSqueda Por Hash
BúSqueda Por HashBúSqueda Por Hash
BúSqueda Por HashAngie Suarez
 
Reporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoReporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoTAtiizz Villalobos
 
5. algoritmos de búsqueda
5. algoritmos de búsqueda5. algoritmos de búsqueda
5. algoritmos de búsquedaFernando Solis
 
Algoritmos de Dijkstra, Warshall, Ordenación Topológica.
Algoritmos de Dijkstra, Warshall, Ordenación Topológica.Algoritmos de Dijkstra, Warshall, Ordenación Topológica.
Algoritmos de Dijkstra, Warshall, Ordenación Topológica.Bryan Aguilar Yaguana
 

Mais procurados (20)

Ordenamiento parte 2
Ordenamiento parte 2Ordenamiento parte 2
Ordenamiento parte 2
 
Hash mitad al cuadrado pdf
Hash mitad al cuadrado pdfHash mitad al cuadrado pdf
Hash mitad al cuadrado pdf
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
Busqueda Binaria
Busqueda BinariaBusqueda Binaria
Busqueda Binaria
 
Ordenamientos burbuja e inserción
Ordenamientos burbuja e inserciónOrdenamientos burbuja e inserción
Ordenamientos burbuja e inserción
 
Metodos de-ordenamiento
Metodos de-ordenamientoMetodos de-ordenamiento
Metodos de-ordenamiento
 
Algoritmo de ordenamiento: Heap Sort
Algoritmo de ordenamiento: Heap SortAlgoritmo de ordenamiento: Heap Sort
Algoritmo de ordenamiento: Heap Sort
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
 
Listas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de DatosListas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de Datos
 
Algoritmos de busqueda
Algoritmos de busquedaAlgoritmos de busqueda
Algoritmos de busqueda
 
Informe algoritmos de busqueda
Informe algoritmos de busquedaInforme algoritmos de busqueda
Informe algoritmos de busqueda
 
BúSqueda Por Hash
BúSqueda Por HashBúSqueda Por Hash
BúSqueda Por Hash
 
Metodo de busqueda
Metodo de busquedaMetodo de busqueda
Metodo de busqueda
 
Reporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoReporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamiento
 
Aritmetica Modular
Aritmetica ModularAritmetica Modular
Aritmetica Modular
 
Hash mitad al cuadrado
Hash mitad al cuadradoHash mitad al cuadrado
Hash mitad al cuadrado
 
5. algoritmos de búsqueda
5. algoritmos de búsqueda5. algoritmos de búsqueda
5. algoritmos de búsqueda
 
Metodo quicksort
Metodo quicksortMetodo quicksort
Metodo quicksort
 
Algoritmos de Dijkstra, Warshall, Ordenación Topológica.
Algoritmos de Dijkstra, Warshall, Ordenación Topológica.Algoritmos de Dijkstra, Warshall, Ordenación Topológica.
Algoritmos de Dijkstra, Warshall, Ordenación Topológica.
 

Semelhante a Función Hash: metodos de división y de medio Cuadrado.

Semelhante a Función Hash: metodos de división y de medio Cuadrado. (20)

Hashing
HashingHashing
Hashing
 
Hashing
HashingHashing
Hashing
 
Hashing
HashingHashing
Hashing
 
Hashing
HashingHashing
Hashing
 
Hashing
HashingHashing
Hashing
 
Unidad 8 metodos_de_busqueda
Unidad 8 metodos_de_busquedaUnidad 8 metodos_de_busqueda
Unidad 8 metodos_de_busqueda
 
Hashing
HashingHashing
Hashing
 
Dipersion hash
Dipersion hashDipersion hash
Dipersion hash
 
Dipersion
DipersionDipersion
Dipersion
 
Dipersion HASH
Dipersion HASHDipersion HASH
Dipersion HASH
 
hashing.ppt
hashing.ppthashing.ppt
hashing.ppt
 
Algoritmos de busqueda
Algoritmos de busquedaAlgoritmos de busqueda
Algoritmos de busqueda
 
Grupos y codigos matematica discreta
Grupos y codigos  matematica discretaGrupos y codigos  matematica discreta
Grupos y codigos matematica discreta
 
Busqueda por HASH
Busqueda por HASHBusqueda por HASH
Busqueda por HASH
 
Rbn
RbnRbn
Rbn
 
Tablas hash EDI
Tablas hash EDITablas hash EDI
Tablas hash EDI
 
Metodos de Búsqueda
Metodos de BúsquedaMetodos de Búsqueda
Metodos de Búsqueda
 
RAÍCES DE ECUACIONES
RAÍCES DE ECUACIONESRAÍCES DE ECUACIONES
RAÍCES DE ECUACIONES
 
escuela superiror politecnica de chimborazo
escuela superiror politecnica de chimborazoescuela superiror politecnica de chimborazo
escuela superiror politecnica de chimborazo
 
tablahash(marialuisa)
tablahash(marialuisa)tablahash(marialuisa)
tablahash(marialuisa)
 

Función Hash: metodos de división y de medio Cuadrado.

  • 1. Universidad Nacional de Costa Rica Hash : -Método de división. -Método del medio cuadrado.
  • 2. Hash: Una función hash H es una función computable mediante un algoritmo, H: U → M x → h(x), que tiene como entrada un conjunto de elementos, que suelen ser cadenas, y los convierte (mapea) en un rango de salida finito, normalmente cadenas de longitud fija.
  • 3. Uso de funciones Hash: proteger la confidencialidad de una contraseña garantizar la integridad de los datos.
  • 4. verificar la identidad del emisor de un mensaje mediante firmas digitales.
  • 5. Colisión: Un problema potencial encontrado en el proceso hash, es que tal función no puede ser uno a uno; las direcciones calculadas pueden no ser todas únicas, cuando H(K1) = H(K2). Si K1 es diferente de K2 decimos que hay una colisión. A dos claves diferentes que les corresponda la misma dirección relativa se les llama sinónimos.
  • 6. Método de División La función de este método es dividir el valor de la llave entre un numero apropiado, y después utilizar el residuo de la división como dirección relativa para el registro. F(hash) = llave % divisor.
  • 7. Existen varios factores que deben considerarse para seleccionar el divisor:  divisor > n : suponiendo que solamente un registro puede ser almacenado en una dirección relativa dada.  Seleccionarse el divisor de tal forma que la probabilidad de colisión sea minimizada.
  • 8. Uso: Cuando la distribución de los valores de llaves no es conocida.
  • 9. Ejemplo: Si la tabla hash tiene tamaño m = 12 y la llave es k = 100, entonces h(k) = 100 mod 12 = 4.
  • 10. Método de medio cuadrado Consiste en elevar al cuadrado la clave y tomar los dígitos centrales como dirección. El número de dígitos a tomar queda determinado por el rango del índice. Sea K la clave del dato a buscar, la función hash queda definida por la siguiente formula: H(K) = digitos_centrales (K^2) + 1 Las suma de los dos dígitos centrales de la clave K (elevada al cuadrado) más 1, debe obtener un valor entre 1 y N (N, tamaño del arreglo).
  • 11. Uso: puede aplicarse en archivos con factores de cargas bastantes bajas
  • 12. Ejemplo: Sea N=100 el tamaño del arreglo. Sea su dirección los números entre 1 y 100. Sea K1 = 7259 una clave a la que se le debe asignar una posición en el arreglo. K1^2 = 52 693 081 H(K1) = ( 52 693 081 ) + 1 = 94
  • 14. Gracias! Estudiantes: Mª Analive Castro Vargas. Andrés Dalolio Aguilar. Fernando Navarro Juárez.