Diferença entre pilha e fila

Anonim

Stack vs Queue

Stack é uma lista ordenada na qual a inserção e exclusão de itens de lista podem ser feitas somente em uma extremidade chamada top. Devido a esta razão, a pilha é considerada como uma estrutura de dados Last in First out (LIFO). A fila também é uma lista ordenada na qual a inserção de itens de lista é feita em uma extremidade chamada de trás e a exclusão de itens é feita na outra extremidade chamada frente. Este mecanismo de inserção e exclusão faz da fila uma estrutura de dados First in First out (FIFO).

O que é Stack?

Como mencionado anteriormente, a pilha é uma estrutura de dados na qual os elementos são adicionados e removidos de apenas um fim chamado top. As pilhas permitem apenas duas operações fundamentais chamadas push e pop. A operação push adiciona um novo elemento ao topo da pilha. A operação pop remove um elemento do topo da pilha. Se a pilha já estiver cheia, quando uma operação de envio é realizada, ela é considerada como um estouro de pilha. Se uma operação pop for executada em uma pilha já vazia, ela é considerada como um sub-fluxo de pilha. Devido ao pequeno número de operações que podem ser realizadas em uma pilha, é considerada como uma estrutura de dados restrita. Além disso, de acordo com a forma como as operações push e pop são definidas, é claro que os elementos que foram adicionados na última pilha saíram da pilha primeiro. Portanto, a pilha é considerada como uma estrutura de dados LIFO.

O que é Fila?

Em uma fila, elementos são adicionados a partir da parte posterior da fila e removidos da frente da fila. Como os elementos que são adicionados primeiro serão removidos da fila primeiro, ele mantém a ordem FIFO. Devido a esta ordem de adição e remoção de elementos, a fila representa a idéia de uma linha de pagamento. As operações gerais suportadas por uma fila são operações de en-fila e de fila. A operação En-queue adicionará um elemento na parte traseira da fila, enquanto a operação de-fila remove um elemento da frente da fila. Em geral, as filas não têm limite no número de elementos que podem ser adicionados à fila além das restrições de memória.

Qual a diferença entre Stack e Queue?

Embora tanto as pilhas quanto as filas sejam tipos de listas ordenadas, elas têm algumas diferenças importantes. Em pilhas, a adição ou exclusão de itens pode ser feita somente a partir de uma extremidade chamada superior, enquanto que as filas que adicionam itens são feitas a partir de uma extremidade chamada parte traseira e os itens de exclusão são feitos da outra extremidade chamada frente. Em uma pilha, os itens que são adicionados por último na pilha serão removidos primeiro da pilha. Portanto, a pilha é considerada como uma estrutura de dados LIFO. Nas filas, os itens que são adicionados primeiro serão removidos da fila primeiro. Portanto, a fila é considerada como uma estrutura de dados FIFO.

Link relacionado:

Diferença entre pilha e heap