Estruturas de Dados Fila Pilha Compacta v2
Estruturas de Dados Fila Pilha Compacta v2
Estruturas de Dados Fila Pilha Compacta v2
Fila (Array): Uma fila (queue) é uma estrutura de dados que segue o princípio FIFO (First In, First Out). Em um array, os elementos são adicionados no final da fila e removidos do início.
Exemplo em Java:
import java.util.LinkedList;
import java.util.Queue;
public class FilaArray {
public static void main(String[] args) {
Queue<Integer> fila = new LinkedList<>();
fila.add(1); // Adiciona 1 à fila
fila.add(2); // Adiciona 2 à fila
System.out.println(fila.remove()); // Remove e imprime o primeiro elemento: 1
}
}
Pilha (Array): Uma pilha (stack) segue o princípio LIFO (Last In, First Out). Em um array, os elementos são adicionados e removidos do final da pilha.
Exemplo em Java:
import java.util.Stack;
public class PilhaArray {
public static void main(String[] args) {
Stack<Integer> pilha = new Stack<>();
pilha.push(1); // Adiciona 1 à pilha
pilha.push(2); // Adiciona 2 à pilha
System.out.println(pilha.pop()); // Remove e imprime o último elemento: 2
}
}
Fila Circular (Array): Uma fila circular conecta o último elemento ao primeiro formando um círculo. Permite uma utilização eficiente do espaço.
Exemplo em Java:
Pilha Encadeada (Linked List): Uma pilha encadeada utiliza nós conectados para armazenar os elementos. É eficiente para inserções e remoções frequentes.
Exemplo em Java:
private class No {
int valor;
No proximo;
No(int valor) { this.valor = valor; }
}
Fila Encadeada (Linked List): Uma fila encadeada utiliza nós conectados, permitindo inserções no final e remoções no início de forma eficiente.
Exemplo em Java:
private class No {
int valor;
No proximo;
No(int valor) { this.valor = valor; }
}