Qual é a diferença entre fila linear e fila circular

Índice:

Anonim

o principal diferença entre a fila linear e a fila circular é que uma fila linear organiza os dados em ordem sequencial, um após o outro, enquanto uma fila circular organiza os dados de forma semelhante a um círculo, conectando o último elemento de volta ao primeiro elemento.

Uma estrutura de dados é uma forma sistemática de organizar os dados para usá-los com eficiência. É importante considerar a complexidade de tempo e espaço ao implementar estruturas de dados. A complexidade do tempo descreve o tempo de execução, enquanto a complexidade do espaço descreve o requisito de memória da estrutura de dados. Uma estrutura de dados importante na computação é uma fila. Existem dois tipos de filas como filas lineares e circulares.

Fila circular, fila linear, fila

O que é uma fila linear

Uma fila linear é uma fila semelhante a uma linha reta. Ele consiste em um conjunto de elementos de dados, um após o outro. Portanto, é possível adicionar novos elementos à fila de uma extremidade. Portanto, chamamos essa operação de enfileiramento. Da mesma forma, é possível remover o elemento da fila da outra extremidade. E, chamamos essa operação de desenfileiramento. A frente da fila é a cabeça e o fim da fila é a cauda ou a retaguarda. Em uma fila linear, é possível inserir novos itens pela parte traseira e remover os itens pela frente. Além disso, uma fila é semelhante a pessoas que esperam em linha reta para acessar o caixa eletrônico. Uma nova pessoa chega e se junta no final da fila, e a primeira pessoa na fila obtém acesso à máquina.

Figura 1: fila linear

Podemos realizar várias operações em uma fila linear. Podemos inicializar uma fila para zero. Também podemos verificar se a fila está vazia ou não. Outra operação é descobrir se a fila está vazia ou não. Estas são algumas operações comuns a serem executadas em uma fila linear, além de operações de enfileiramento e desenfileiramento.

Embora uma fila linear seja simples de implementar, ela tem algumas desvantagens. Remover itens da fila pode criar mais espaço. No entanto, ainda pode ser difícil inserir novos elementos, pois isso pode causar uma condição de underflow. Uma fila circular ajuda a superar esse problema.

O que é uma fila circular

Em uma fila circular, o último item se conecta de volta ao primeiro item para criar um círculo. Portanto, uma fila circular também é chamada de buffer em anel.

Figura 2: Uma fila circular de teclado de 24 bytes

Como uma fila circular conecta as duas extremidades, o primeiro item vem depois do último item. Não há condição de estouro em uma fila circular até que a fila esteja realmente cheia. Portanto, inserir um novo elemento é fácil.

Além disso, a fila circular funciona de acordo com as duas condições abaixo. O maxSize indica o número máximo de itens em que a fila pode consistir.

traseira = (traseira +1)% maxSize;

front = (front + 1)% maxSize;

Diferença entre fila linear e fila circular

Definição

Uma fila linear é uma estrutura de dados linear que armazena dados como uma sequência de elementos semelhante a uma fila do mundo real, enquanto uma fila circular é uma estrutura de dados linear em que o último item se conecta de volta ao primeiro item formando um círculo. Portanto, esta é a principal diferença entre a fila linear e a fila circular.

Inserção e exclusão

Em uma fila linear, é possível inserir novos itens pela parte traseira e remover os itens pela frente. Porém, em uma fila circular, é possível inserir e remover elementos de qualquer posição. Portanto, esta é outra diferença entre a fila linear e a fila circular.

Espaço de Memória

Além disso, o espaço de memória é outra diferença entre a fila linear e a fila circular. A fila linear requer mais memória do que a fila circular.

atuação

Conclusão

Existem dois tipos de filas como filas lineares e circulares. A principal diferença entre fila linear e fila circular é que uma fila linear organiza os dados em uma ordem sequencial, um após o outro, enquanto uma fila circular organiza os dados de maneira semelhante a um círculo, conectando o último elemento de volta ao primeiro elemento.

Referência:

“1. Tutorial da fila linear. ” Topologias de rede (seus tipos, vantagens e desvantagens) - IncludeHelp, disponível aqui.2. “Circular Queue | Conjunto 1 (introdução e implementação de array). ” GeeksforGeeks, 24 de dezembro de 2018, disponível aqui.

Cortesia de imagem:

1. “Fila de dados” por Vegpuff Própria obra (CC BY-SA 3.0) via Commons Wikimedia 2. “Circular Buffer Animation” Por MuhannadAjjan - Própria obra (CC BY-SA 4.0) via Commons Wikimedia

Qual é a diferença entre fila linear e fila circular