Pilha e fila de JavaScript
Este tutorial irá discutir a implementação de pilha e fila usando array em JavaScript.
Implementar Stack and Queue Usando Array em JavaScript
Podemos implementar pilha e fila usando array e listas vinculadas em JavaScript. A pilha funciona no princípio do primeiro a entrar no último a sair, o que significa que o primeiro elemento adicionado à pilha será removido após a remoção de todos os outros elementos e vice-versa. As filas funcionam no princípio do primeiro a entrar, primeiro a sair, o que significa que o primeiro elemento adicionado à pilha será removido primeiro e vice-versa. Implementar pilha e fila com o array é fácil em comparação com listas vinculadas porque podemos obter muitas funções predefinidas para uso. Por exemplo, para implementar a pilha, podemos usar as funções push()
e pop()
. A função push()
é usada para adicionar um elemento no final de uma pilha ou array, e a função pop()
é usada para remover um elemento do final da pilha ou array. Vamos implementar uma pilha usando um array em JavaScript. Veja o código abaixo.
var MyStack = [];
MyStack.push(1);
MyStack.push(9);
console.log('Stack before pop', MyStack);
MyStack.pop();
console.log('Stack after pop', MyStack);
Resultado:
Stack before pop (2) [1, 9]
Stack after pop [1]
No código acima, usamos a função push()
para adicionar dois valores, 1 e 9, à pilha, e você pode ver na saída que os dois valores estão armazenados na pilha. Usamos a função pop()
para remover o último elemento da pilha, e você pode ver na saída que o último elemento foi removido da pilha. Você pode verificar o tamanho da pilha usando a função length
. O desempenho da implementação da pilha com o array é bastante alto porque estamos apenas adicionando um elemento no final do array e também removendo-o do final. Você também pode implementar uma pilha com listas vinculadas, mas não encontrará nenhuma função pré-construída para ajudá-lo. Agora, vamos implementar uma fila usando a função push()
e shift()
. A função push()
é usada para adicionar um elemento no final da fila ou array, e a função shift()
é usada para remover um elemento do início da pilha ou array. Veja o código abaixo.
var MyQueue = [];
MyQueue.push(1);
MyQueue.push(9);
console.log('Queue before shift', MyQueue);
MyQueue.shift();
console.log('Queue after shift', MyQueue);
Resultado:
Queue before shift (2) [1, 9]
Queue after shift [9]
No código acima, usamos a função push()
para adicionar dois valores, 1 e 9, à fila, e você pode ver na saída que os dois valores estão armazenados na fila. Usamos a função shift()
para remover o primeiro elemento da fila, e você pode ver na saída que o primeiro elemento foi removido da fila. Você pode verificar o tamanho da fila usando a função length
. O desempenho da criação de fila com o array é bastante baixo porque quando as funções shift()
removem o primeiro elemento, é necessário mover cada elemento um passo para trás no array. Portanto, se você deseja implementar uma fila contendo um grande número de elementos, deve usar a lista vinculada para implementar uma fila.