Filas (Quenue) Flashcards
(9 cards)
O que é uma Fila (Queue) em Estruturas de Dados?
Uma Fila é uma estrutura de dados que segue o princípio FIFO (First In, First Out), onde o primeiro elemento inserido é o primeiro a ser removido.
Quais são as operações principais em uma Fila?
Enqueue (Inserção), Dequeue (Remoção), Front (Acesso ao primeiro), Rear (Acesso ao último), IsEmpty (Verificação se está vazia), IsFull (Verificação se está cheia).
Onde podemos usar uma Fila na prática?
Fila de impressão, Processamento de tarefas, Navegação em sites.
Qual a complexidade das operações em uma Fila?
Enqueue: O(1), Dequeue: O(1), Front: O(1), Rear: O(1), IsEmpty/IsFull: O(1).
Como é a implementação de uma Fila simples em C?
```c
#define MAX 100
int queue[MAX];
int front = -1, rear = -1;
void enqueue(int value) {
if (rear < MAX - 1) {
if (front == -1) front = 0; // Fila vazia
queue[++rear] = value;
}
}
int dequeue() {
if (front <= rear) {
int value = queue[front++];
if (front > rear) { // Fila vazia após remoção
front = rear = -1;
}
return value;
}
return -1; // Fila vazia
}```
Qual é a diferença entre Fila e Pilha?
Fila segue o princípio FIFO (First In, First Out), enquanto Pilha segue o princípio LIFO (Last In, First Out).
O que acontece se tentarmos fazer um Dequeue em uma fila vazia?
Tentar fazer um Dequeue em uma fila vazia pode retornar um valor de erro, como -1 ou null, dependendo da implementação.
Como gerenciar uma Fila com capacidade limitada?
Verificar a capacidade da fila antes de fazer o Enqueue. Se a fila estiver cheia, retornar um erro ou sinalizar a operação não permitida.
Quais são as vantagens de usar uma Fila?
Ordem de Processamento e Simplicidade de Implementação.