Quais são as diferenças entre a Circular Queue &uma fila Linear

? Enquanto as filas podem se relacionar com qualquer sistema de fluido , as filas circulares e lineares são mais frequentemente associados com sistemas de software de computador e de computador. Entre estes dois tipos de filas existem duas diferenças estruturais e de desempenho. Por exemplo, na concepção de um farm de servidores Web , um arquiteto de rede poderá ter de decidir se o acesso deve ser tratado em uma fila circular ou uma fila linear. Isso afeta como o acesso aos servidores é encaminhado , bem como a forma como os servidores devem ser ligadas estruturalmente . Real- Vida Ilustrações

Para entender rapidamente a principal diferença entre uma fila linear e uma fila circular , considere um exemplo da vida real . Se um grupo de pessoas estão esperando na fila para se sentar em um restaurante, quando uma tabela está pronto , as pessoas na frente da linha de sentar-se e os recém-chegados tomam o seu lugar na parte de trás da linha. Uma fila circular é mais como um jogo de cadeiras musicais. Os recém-chegados podem entrar em qualquer lugar há espaço , desde que haja uma cadeira vazia .

Comparando Estruturas de fila

Uma fila linear é como uma linha reta na qual todos os elementos ou instruções levantar um atrás do outro . Há um começo e um fim definitivo da fila. Tarefas alinhados em fila neste formato são executadas na ordem de colocação, em uma base FIFO ( First In First Out) . A fila circular tem uma estrutura circular . O último elemento da fila está ligado com o primeiro elemento , completando assim o ciclo . Tarefas neste formato não são essencialmente executadas na ordem em que eles são enviados .

De Inclusão e Exclusão

uma fila linear , uma nova tarefa é inserida no final da lista , enquanto que a deleção é feita na parte frontal da lista . As extremidades dianteiras e traseiras são responsáveis ​​pelo acompanhamento do status da fila . Uma fila pode ter um número finito de elementos , que são pré-definidos . Cada nova inserção deve passar por uma ” fila cheia ” teste, e da mesma forma , antes de uma exclusão, uma ” fila vazia ” teste deve ser passado. ” fila cheia ” verifica se que há espaço para a inserção , e ” fila vazia ” certifica-se de que há elementos à espera de ser eliminado ea fila já não está vazio. Em uma fila circular, inserções e deleções podem acontecer a qualquer posição na fila , e não necessariamente em uma ordem seqüencial .

Custo de Manutenção e Hora

uma fila linear , para uma nova inserção no final , deve haver um espaço vazio na parte da frente e de todos os elementos entre eles deve mover -se um espaço para criar uma vaga para a nova inserção . Cada vez que há uma nova inserção , os passos têm que ser repetido . Inclusão e exclusão são, portanto, duas etapas diferentes. Esta abordagem é demorada e dispendiosa . Por outro lado , em uma fila circular, inserção e exclusão pode acontecer simultaneamente.

Deixe um comentário