Tablas hash en JavaScript | Explicado

Tablas hash en JavaScript | Explicado
Las estructuras de datos se utilizan en la programación de computadoras para organizar datos y aplicar algoritmos para codificar. Por lo tanto, comprender las estructuras de datos y los algoritmos es beneficioso para la resolución de problemas y se requiere para aprobar entrevistas de codificación.

Este artículo discutirá una de esas estructuras de datos principales conocida como "Tabla de picadillo"Eso se considera ideal para almacenar una gran cantidad de datos. Mesas de hash también se puede utilizar para Representación de datos única, indexación de bases de datos, buscando en un sin clasificar o ordenado matrices.

Ahora, profundicemos en el trabajo e implementación de tablas hash en JavaScript.

Tablas de hash en JavaScript

En JavaScript, un "tabla de picadillo"Es una estructura de datos que se puede utilizar para mapear las claves de sus valores especificados. También se conoce como un "mapa de hash". Las tablas hash realizan eficientemente la operación de inserción y eliminación para un par de valores clave y busque el valor de una clave dentro de una tabla hash.

Componentes de las tablas hash en JavaScript

Existen dos componentes de las tablas hash en JavaScript: un "objeto" y una "función hash":

  • Objeto: Un objeto contiene la tabla hash en la que se almacenan los datos. Sostiene todo el "valor clave"Pares de la mesa hash. Además, su tamaño debe determinarse por el tamaño de los datos esperados.
  • Función hash: Una función hash se define para una tabla hash para averiguar el "índice"Del par de valores clave dado. Esta función acepta un "llave"Como entrada y luego asigna un específico"índice"Y establece eso como caso de devolución.

Hasta este punto, has entendido el concepto de tablas hash en JavaScript. Ahora, diremos hacia su lado de implementación.

Cómo implementar tablas hash en JavaScript

Para la implementación básica de las tablas hash en JavaScript, debe realizar estas tres operaciones:

  • En primer lugar, crear a clase para la mesa del hash.
  • Definir a función hash.
  • Definir un método para agregar pares de valor clave para las tablas hash.

Pasaremos en la primera operación y crearemos un "Tabla de picadillo"Clase en nuestro programa JavaScript.

Paso 1: crea una clase para la tabla hash

Nuestro "Tabla de picadillo"La clase comprende una siguiente"constructor", En el que hemos declarado un"objeto", es "longitud", Y la mesa hash"tamaño":

clase hashtable
constructor ()
este.objeto = ;
este.tamaño = 0;
este.longitud = 0;

Paso 2: Defina una función hash

En el siguiente paso, definiremos un "hashfunc ()"Función de hash que acepta"llave"Como argumento y calcula su"módulo aritmético"Y devuelva el valor resultante:

hashfunc (clave)
tecla de retorno.Encadenar().longitud % esto.tamaño;

En nuestro "Tabla de picadillo"Clase, ahora agregaremos una función llamada"addpair ()"Para agregar los pares de valor clave a la tabla hash.

Paso 3: Defina un método para agregar pares de valor clave para las tablas hash

En el siguiente "addpair ()"Función, la primera operación que se realizará es el cálculo de"picadillo"Para la clave especificada como un argumento, con la ayuda del"hashfunc ()" función.

A continuación, un "si"La condición verifica si la calculada"picadillo"Ya no existe en el"objeto", Luego almacena el hash. Después de hacerlo, el almacenado "picadillo"Se probará que si no contiene alguno"llave", Luego incrementa la longitud"objeto"Y agregue el"valor clave"Combina al objeto de tabla hash:

addpair (clave, valor)
const hash = esto.hashfunc (clave);
si (!este.objeto.hastawnproperty (hash))
este.objeto [hash] = ;

si (!este.objeto [hash].hastawnproperty (key))
este.longitud ++;

este.objeto [hash] [clave] = valor;

Quiere buscar una clave en la tabla hash? Para este propósito, debes definir un "buscando función()" en tus "Tabla de picadillo" clase. Este "buscando función()"Aceptará un"llave"Como argumento y calcule su"picadillo"Al utilizar el"hashfunc ()"Función de hashing.

Después de eso, un "si"La condición se agrega en el"buscando función()"Que valida si la tabla hash"objeto"Ha calculado"picadillo"Y el especificado"llave"Existe para eso"picadillo". Entonces, en caso de que el agregado "si"La declaración evalúa que es"verdadero", Entonces se devolverá el valor almacenado para el argumento aprobado:

SearchFunction (Key)
const hash = esto.hashfunc (clave);
si esto.objeto.hastawnproperty (hash) && esto.objeto [hash].hastawnproperty (key))
devolver esto.objeto [hash] [clave];
demás
regresar nulo;

Agregue todas las funciones dadas anteriormente en su "Tabla de picadilloClase "y luego cree una instancia para usar las funciones definidas:

const hashtable = new Hashtable ();

Ahora, agregaremos los siguientes tres "valor clave"Pares en nuestro creado"tabla de picadillo" objeto:

tabla de picadillo.addpair ("Alex", "01");
tabla de picadillo.addpair ("Stepheny", "23");
tabla de picadillo.addpair ("max", "90");

Por último, utilizaremos el "buscando función()"Para encontrar el valor del"Stepheny" llave:

consola.registro (hashtable.SearchFunction ("Stepheny"));

La salida dada significa que hemos recuperado con éxito el valor de la clave especificada desde la tabla hash:

Esa fue toda la información esencial relacionada con las tablas hash en JavaScript. Puede investigar más de acuerdo con sus requisitos.

Conclusión

Tabla de picadillo en Javascript es una estructura de datos que se puede utilizar para mapear las claves de sus valores especificados. Se basa principalmente en dos componentes: un objeto y una función hash, donde el objeto contiene la tabla hash en la que se almacenan los datos y contiene todos los "valor clave"Pares de la tabla hash, y la función hash se usa para determinar el"índice"Del par de valores clave especificado. Este artículo sobre el concepto de tablas hash en JavaScript.