Estructura de datos y de la información<br />Alejandra Fernández Santiago<br />UO189436<br />Tablas hash<br />
Almacena pares clave-valor.<br />Se debe implementar hashCode<br />2 parámetros: <br />Capacidad inicial<br />Factor de ca...
Preguntas<br />¿Podemos utilizar Object para los elementos de la implementación de la tabla hash?<br />NO, necesitamos alm...
Tabla hash tam=10<br />Insertar 10, 20, 30, 40 <br />Redispersión lineal: entero%b<br />		30% 10 = 0 (ocupada)<br />¿30? 	...
FIN<br />
Próxima SlideShare
Cargando en…5
×

Tablas hash

163 visualizaciones

Publicado el

Alejandra Fernández Santiago

0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
163
En SlideShare
0
De insertados
0
Número de insertados
2
Acciones
Compartido
0
Descargas
0
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Tablas hash

  1. 1. Estructura de datos y de la información<br />Alejandra Fernández Santiago<br />UO189436<br />Tablas hash<br />
  2. 2. Almacena pares clave-valor.<br />Se debe implementar hashCode<br />2 parámetros: <br />Capacidad inicial<br />Factor de carga: aumentar tamaño. Por defecto 0,75.<br />Métodos:<br />Insertar: posición dada por hash().<br />Buscar: comparando claves<br />Tabla hash de java.util<br />
  3. 3. Preguntas<br />¿Podemos utilizar Object para los elementos de la implementación de la tabla hash?<br />NO, necesitamos almacenar pares de clave-valor. Necesitamos una clase contenedora.<br />¿Cómo es y dónde se desarrolla la función de dispersión?<br />Dar posición dentro de la tabla según clave.<br />Claves enteras: clave % b<br />Claves String:<br />Suma de los ascii<br />Limitar longitud, asignar peso: 𝑛=13𝑎𝑠𝑐𝑖𝑖𝑖∗27𝑖<br />Limitar longitud, asignar peso(Horner): 𝑛=1𝑘𝑎𝑠𝑐𝑖𝑖𝑖∗32𝑖<br /> <br />
  4. 4. Tabla hash tam=10<br />Insertar 10, 20, 30, 40 <br />Redispersión lineal: entero%b<br /> 30% 10 = 0 (ocupada)<br />¿30? 0+1 = 1 (ocupada)<br /> 0+2= 2 (libre)<br />Buscar 20: hash ( 20)<br /> 20 % 10 = 0 No <br />¿20?<br /> 0 + 1 = 1 Sí<br />Ejemplo<br />
  5. 5. FIN<br />

×