Pular para conteúdo

Aula 01 - Introdução às Estruturas de Dados e Tipos Abstratos de Dados (TAD) 🧱

Estruturas de Dados e Algoritmos


Agenda da Sessão 📅

  1. Fundamentação Teórica & Problema
  2. Invariância da Estrutura & Complexidade Big-O
  3. Alocação Dinâmica na Heap & Ponteiros
  4. Implementação Prática em Linguagem C
  5. 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 🧠

  • Tipo Abstrato de Dados (TAD): Diretriz central.
  • Encapsulamento em C: Representação em memória.
  • Ocultamento de Informação: Operação assintótica.

3. Código Exemplo em C 💻

// TAD Ponto 2D - Encapsulamento em C
// ponto.h
typedef struct Ponto Ponto;
Ponto* ponto_criar(float x, float y);
void ponto_liberar(Ponto* p);
float ponto_distancia(Ponto* p1, Ponto* p2);

// ponto.c
#include <stdlib.h>
#include <math.h>

struct Po

4. Atividades da Aula 🚀

  • Ler o conteúdo teórico completo da Aula 01.
  • 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.