Aula 15 - Heaps Binários e Filas de Prioridade (Priority Queues) 🧱
Estruturas de Dados e Algoritmos
Agenda da Sessão 📅
Fundamentação Teórica & Problema
Invariância da Estrutura & Complexidade Big-O
Alocação Dinâmica na Heap & Ponteiros
Implementação Prática em Linguagem C
Análise de Casos de Borda & Debug
1. Visão Geral & Importância 🎯
Como organizar dados em memória de forma eficiente?
Diferença de performance entre \(O(1)\), \(O(\log n)\) e \(O(n)\).
Gestão de memória rigorosa: alocação e desalocação consciente.
2. Princípios Algorítmicos 🧠
Max-Heap e Min-Heap: Diretriz central.
Fila de Prioridade: Representação em memória.
Heapify O(log n): Operação assintótica.
3. Código Exemplo em C 💻
// Max-Heapify em Vetorvoidheapify(intarr[],intn,inti){intmaior=i;intesq=2*i+1;intdir=2*i+2;if(esq<n&&arr[esq]>arr[maior])maior=esq;if(dir<n&&arr[dir]>arr[maior])maior=dir;i
4. Atividades da Aula 🚀
Ler o conteúdo teórico completo da Aula 15.
Resolver o Quiz de 10 Questões Interativas.
Praticar com os Exercícios e conferir o Gabarito Explicado.
Desenvolver o Projeto de TAD sem vazamentos de memória.