¿Qué es un hashmap?

En informática, una tabla hashmap o hash es una forma de estructuración de datos para que cada pieza de datos esté vinculado a un número o símbolo de identificación único. Esto permite una recuperación fácil, especialmente de una gran base de datos que contiene miles de entradas. El hashmap no es una parte específica del programa, sino que se refiere a una forma de organización de datos que asigna cada elemento, conocido como clave, en la base de datos a un valor que representa ese elemento. La función hash es la parte del programa que vincula las claves con sus valores.

Las guías telefónicas sirven como un excelente ejemplo de un hashmap. La forma en que se presenta la guía telefónica representa la estructura del hashmap. Se centra en vincular diferentes valores juntos y vincular solo un valor con otro término correspondiente o número de teléfono. Los nombres en la guía telefónica son las claves y los números de teléfono son los valores asociados con ellos. A cada persona en el libro se le asigna un número diferente y no hay dos iguales.

Las cajas de la oficina de correos también sirven comoUna metáfora del hashmap. Cada persona tiene una llave para una sola caja. La caja puede contener múltiples piezas de información (facturas, cartas, postales), todas destinadas a la persona que tiene la llave de la caja. Cuando la tecla correcta se inserta o coincide con el cuadro correcto, se abre para revelar su contenido.

Los hashmaps perfectamente que funcionan vincularían una tecla de un "cuadro" de memoria en una base de datos de computadora. Desafortunadamente, puede ocurrir un factor conocido como colisión hash, donde dos claves van a la misma caja. Esto sucede cuando se ingresa una gran cantidad de datos y no hay suficientes "cajas" para acomodarlos todo.

A diferencia de una guía telefónica o una caja de correos, los hashmaps incluyen un tercer elemento además de la clave y el valor o el cuadro que coincide. También incluye una función hash. Una persona sabe qué caja de correos es suya, pero se debe decir a una computadora a qué llave va a qué caja. El hash fuNCTION mira la clave, la traduce en una serie de números o código y lo vincula al cuadro que contiene el código correspondiente. El nombre de la clave, como "Mary", solo está ahí, por lo que es más fácil para las personas interpretar, mientras que el código real es una cadena de números destinados a leer la computadora.

OTROS IDIOMAS