Aula 08
Pilhas (Stacks): Princípio LIFO e Aplicações
Estruturas de Dados Avançadas
Objetivos Didáticos
- Estrutura Last-In First-Out (LIFO), operações push, pop, peek e isEmpty em O(1). Aplicações: avaliação de expressões em Notação Polonesa Reversa (RPN) e validação de parênteses.
- Eficiência assintótica de tempo e espaço
- Implementação em C com integridade de memória
Conceitos Fundamentais
- Princípio LIFO
- Push e Pop O(1)
- Stack Overflow
- Notação RPN
- Validação de Escopo
Estrutura de Implementação
// Pilha Dinâmica LIFO
typedef struct {
int* itens;
int topo;
int capacidade;
} Pilha;
void pilha_push(Pilha* p, int valor) {
if (p->topo == p->capacidade - 1) return; // Cheia
p->itens[++p->topo] = valor;
}
int pilha_pop(Pilha*
Próximos Passos
Acesse os Exercícios com Gabarito e o Projeto Prático.