Plano de Ensino - Estruturas de Dados 🧭
🎯 Objetivo Geral
Capacitar o aluno a compreender a organização de dados na memória, implementar estruturas fundamentais em linguagem C e analisar a eficiência de algoritmos.
📅 Cronograma de Aulas
| Aula | Tópico | Descrição |
|---|---|---|
| 01 | Introdução | Conceitos básicos, por que estudar estruturas de dados e complexidade básica. |
| 02 | Revisão | Lógica de programação, funções, ponteiros e gerenciamento de memória. |
| 03 | Arrays | Vetores unidimensionais, acesso, percurso e busca linear. |
| 04 | Matrizes | Estruturas bidimensionais e aplicações práticas. |
| 05 | Big-O | Análise de complexidade: O(1), O(n), O(n²), O(log n). |
| 06 | Listas Ligadas | Listas simplesmente encadeadas: inserção, remoção e busca. |
| 07 | Listas Duplas | Listas duplamente encadeadas e suas vantagens. |
| 08 | Pilhas | Conceito LIFO (Last-In, First-Out) e operações push/pop. |
| 09 | Filas | Conceito FIFO (First-In, First-Out) e operações enqueue/dequeue. |
| 10 | Recursão | Recursão vs Iteração, pilha de execução e Torre de Hanói. |
| 11 | Árvores | Conceitos básicos: nós, raiz, folhas e profundidade. |
| 12 | Árvores Binárias | Percursos (pré-ordem, em-ordem, pós-ordem) e implementação. |
| 13 | BST | Árvores de Busca Binária: busca, inserção e remoção eficiente. |
| 14 | Hash | Tabelas Hash, funções de espalhamento e tratamento de colisões. |
| 15 | Grafos | Introdução a Grafos: vértices, arestas e representações. |
| 16 | Projeto Final | Desenvolvimento de um sistema integrado utilizando múltiplas estruturas. |
🎓 Competências
- Pensamento analítico.
- Otimização de recursos computacionais.
- Domínio de manipulação de memória de baixo nível.