Pilha x fila
Pilha é uma lista ordenada na qual a inserção e exclusão de itens da lista podem ser feitas apenas em uma extremidade chamada de topo. Por esse motivo, a pilha é considerada como uma estrutura de dados LIFO (Last in First Out). A fila também é uma lista ordenada na qual a inserção de itens de lista é feita em uma extremidade, chamada de traseira, e a exclusão de itens, na outra extremidade, chamada de frente. Esse mecanismo de inserção e exclusão torna a fila uma estrutura de dados FIFO (primeiro a entrar, primeiro a sair).
O que é Stack?
Como mencionado anteriormente, a pilha é uma estrutura de dados na qual os elementos são adicionados e removidos de apenas uma extremidade chamada de topo. 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 da parte superior da pilha. Se a pilha já estiver cheia, quando uma operação push for executada, ela será considerada um estouro de pilha. Se uma operação pop for executada em uma pilha já vazia, ela será considerada um fluxo insuficiente de pilha. Devido ao pequeno número de operações que podem ser executadas em uma pilha, ela é considerada uma estrutura de dados restrita. Além disso, de acordo com a maneira como as operações push e pop são definidas, fica claro que os elementos que foram adicionados por último à pilha saem primeiro da pilha. Portanto, a pilha é considerada uma estrutura de dados LIFO.
O que é fila?
Em uma fila, os elementos são adicionados na parte traseira da fila e removidos da frente da fila. Como os elementos adicionados primeiro serão removidos da fila primeiro, ele mantém a ordem FIFO. Devido a essa ordem de adição e remoção de elementos, a fila representa a ideia de uma linha de checkout. As operações gerais suportadas por uma fila são operações de fila e de fila. A operação na fila adicionará um elemento na parte traseira da fila, enquanto a operação na fila remove um elemento da frente da fila. Em geral, as filas não têm um 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 as pilhas e as filas sejam tipos de listas ordenadas, elas apresentam algumas diferenças importantes. Nas pilhas, a adição ou exclusão de itens pode ser feita apenas a partir de uma extremidade chamada parte superior, enquanto nas filas a adição de itens é feita a partir de uma extremidade chamada parte traseira e a exclusão de itens é feita a partir da outra extremidade chamada frente. Em uma pilha, os itens adicionados por último à pilha serão removidos primeiro da pilha. Portanto, a pilha é considerada como uma estrutura de dados LIFO. Nas filas, os itens 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 pilha