Filas: mudanças entre as edições
(→Filas) |
(→Filas) |
||
Linha 8: | Linha 8: | ||
[[Arquivo:Fila.png]] | [[Arquivo:Fila.png]] | ||
:Na figura, A foi o primeiro elemento inserido na fila, será portanto o primeiro a sair. Novos elementos são inseridos no final da fila, ou seja, depois do elemento C. | :Na figura, A foi o primeiro elemento inserido na fila, será portanto o primeiro a sair. Novos elementos são inseridos no final da fila, ou seja, depois do elemento C. Se A for removido da fila, B passará a ser o primeiro da fila, ou o próximo a sair. | ||
==Operações primitivas com filas== | |||
As '''operações primitivas''' para lidar com filas são para '''inserir''' itens, '''remover''' itens e verificar se a fila está vazia<ref name="TENENBAUM"/>. | |||
Considere uma fila '''q''' e um item '''x''', a função | |||
insert(q, x) | |||
insere o item x na fila q; | |||
remove(q) | |||
remove o item do início da fila; | |||
empty(q) | |||
verifica se a fila está vazia. | |||
A operação para remover itens da fila somente pode ser executada se a fila não estiver vazia, por isto a utilizada da função para verificar se a fila está vazia. | |||
==Imlementação de filas em linguagem C== | |||
Na '''linguagem C''', uma das maneiras de implememtar uma '''fila''' é utilizando '''vetores'''. | |||
<ref name="TENENBAUM"/> <ref name="FEOFILOFF">FEOFILOFF, p. '''Projeto de algoritmos em C''': Filas. http://www.ime.usp.br/~pf/algoritmos/aulas/fila.html</ref>. | <ref name="TENENBAUM"/> <ref name="FEOFILOFF">FEOFILOFF, p. '''Projeto de algoritmos em C''': Filas. http://www.ime.usp.br/~pf/algoritmos/aulas/fila.html</ref>. |
Edição das 14h19min de 30 de setembro de 2014
Filas
Uma fila é um conjunto ordenado de itens, na qual itens podem ser extraídos de uma extremidade (início da fila) e novos itens podem ser inseridos na outra extremidade (final da fila) [1].
Como os elementos são inseridos por uma extremidade e extraídos pela outra, este tipo de fila é chamado de lista FIFO (First In First Out), ou primeiro que entra é o primeiro que sai.
Uma pilha é uma lista LIFO (Last In First Out), ou último que entra é o primeiro que sai.
- Na figura, A foi o primeiro elemento inserido na fila, será portanto o primeiro a sair. Novos elementos são inseridos no final da fila, ou seja, depois do elemento C. Se A for removido da fila, B passará a ser o primeiro da fila, ou o próximo a sair.
Operações primitivas com filas
As operações primitivas para lidar com filas são para inserir itens, remover itens e verificar se a fila está vazia[1].
Considere uma fila q e um item x, a função
insert(q, x)
insere o item x na fila q;
remove(q)
remove o item do início da fila;
empty(q)
verifica se a fila está vazia.
A operação para remover itens da fila somente pode ser executada se a fila não estiver vazia, por isto a utilizada da função para verificar se a fila está vazia.
Imlementação de filas em linguagem C
Na linguagem C, uma das maneiras de implememtar uma fila é utilizando vetores.
#define TAM 100
struct pilha {
int topo;
int itens[TAM];
};
Referências
- ↑ 1,0 1,1 1,2 TENENBAUM, A. A.; LANGSAM, Y.; AUGENSTEIN, M.J. Estruturas de dados usando C, capítulo 2: A Pilha, São Paulo: Makron Books, 1995.
- ↑ FEOFILOFF, p. Projeto de algoritmos em C: Filas. http://www.ime.usp.br/~pf/algoritmos/aulas/fila.html
--Evandro.cantu (discussão) 16h49min de 17 de julho de 2014 (BRT)