Implementación de Stack en JavaScript

Implementación de Stack en JavaScript

Las pilas son estructuras de datos lineales que siguen el principio de LIFO. LIFO representa el último en primer lugar, lo que significa que el elemento agregado más recientemente es el primero en eliminar. Esta estructura de datos se nombra pila como una analogía con las pilas del mundo real e.gramo., Una pila de galletas en un tarro de galletas o una pila de libros en una estantería. En la inserción y la extracción de la pila solo se pueden hacer en un extremo I.mi., la parte superior de la pila. Por ejemplo, si queremos comer una galleta, primero obtendremos la superior y luego la segunda y así sucesivamente.

Esta publicación se tratará de la implementación de Stack en JavaScript. Mientras trabajamos con JavaScript, no nos preocuparemos por el tamaño de la pila, ya que el tamaño de los objetos JavaScript puede crecer dinámicamente.

Implementación de Stack en JavaScript

Utilizaremos una clase JavaScript para implementar la estructura de datos de pila. El pila La clase contendrá una matriz en su constructor que se utilizará para almacenar elementos en la pila. La clase también definirá diferentes métodos que se utilizarán para manipular los datos almacenados dentro de la pila. Los métodos más básicos de la matriz son insertar() y extracto() Métodos que se utilizan para agregar y eliminar elementos de la parte superior de la pila.

El pila La clase también define otros métodos como ojeada(), esta vacio(), claro(), imprimir() y tamaño() también:

pila de clases
constructor ()
este.elementos = [];

// coloca un artículo en la parte superior de la pila
insertar (elemento)
este.elementos.push (elemento);

// Elimina un elemento de la parte superior de la pila
extracto()
este.elementos.estallido();

// Devuelve el elemento más superior de la pila
peek ()
devolver esto.elementos [esto.elementos.longitud - 1];

// verifica si la pila está vacía
esta vacio()
devolver esto.elementos.longitud == 0;

// Imprime toda la pila
imprimir()
para (deja i = 0; yo < this.elements.length; i++)
consola.Log (esto.elementos [i]);


// Devuelve el tamaño de la pila
tamaño()
devolver esto.elementos.longitud;

// borra la pila
claro()
este.elementos = [];

Empujando y estallando elementos desde la pila

La operación más básica de la pila es insertar y extraer elementos desde la parte superior de la pila. La clase de pila proporciona dos métodos para estas operaciones:


La primera línea del código mencionado anteriormente declara una nueva pila llamada s. Entonces el insertar() El método se utiliza para insertar cuatro elementos en la pila, dos de los cuales se eliminan por el extracto() método.

Cómo obtener el elemento superior de la pila

El pila la clase define el ojeada() Método para obtener el elemento superior de la pila:


Cómo verificar si la pila está vacía?

La clase también define un método que se puede usar para verificar si la pila está vacía:


Cómo imprimir toda la pila?

El imprimir() Se puede llamar al método para imprimir toda la pila


Cómo verificar el tamaño de la pila?

El tamaño() El método utiliza el .longitud propiedad para obtener el tamaño de la pila:


Cómo despejar toda la pila?

Simplemente invoca el claro() Método para eliminar cada elemento de la pila:

Conclusión

Las pilas son estructuras de datos útiles con muchas aplicaciones del mundo real, como el historial del navegador, el botón Deshacer en los editores de texto y los registros de llamadas. Todas estas aplicaciones siguen el Principio de LIFO E.gramo., El botón Atrás en el navegador lleva a la última página visitada y la primera entrada del registro de llamadas es siempre la última llamada.

La implementación de Stack en JavaScript es realmente fácil ya que tiene el incorporado empujar y estallido Métodos para matrices. Este artículo demuestra el proceso de implementación de Stack en JavaScript.