Trabalhos Práticos

A disciplina conta com dois trabalhos práticos de caráter integrador, totalizando 14 pontos. O objetivo destes trabalhos é aplicar os conhecimentos de estruturas de dados avançadas em problemas mais complexos do que os exercícios de maratona convencionais.

Regras Gerais

  • Grupos: Os trabalhos provavelmente serão individuais.
  • Linguagem: Preferencialmente Java mas não deve ser algo obrigatório.
  • Entrega: Via repositório Git, ou submissão no maratona online + Apresentação (Defesa).
  • Integridade: Plágio ou uso não documentado de IA resultará em nota zero.

TP 1: Estruturas Hierárquicas (Árvores)

Valor: 7 Pontos
Data Prevista: 07 de Abril

Escopo

Desenvolvimento de uma aplicação que tire proveito eficiente de estruturas de árvores balanceadas ou indexação. Exemplos de temas: - Implementação comparativa de AVL vs Rubro-Negra. - Sistema de autocompletar eficiente usando Tries. - Indexador de arquivos texto usando Árvores B.


TP 2: Otimização em Grafos

Valor: 7 Pontos
Data Prevista: 12 de Junho

Escopo

Resolução de um problema de otimização combinatória modelado como grafo. Exemplos de temas: - Sistema de recomendação de rotas (Dijkstra/A*). - Análise de redes sociais (Centralidade, Comunidades). - Alocação de recursos usando Fluxo Máximo. - Resolver um problema “Hard” de maratona (ex: Caixeiro Viajante) com heurísticas.


Critérios de Avaliação

Critério Peso
Corretude (Funciona?) 40%
Eficiência (É rápido/otimizado?) 30%
Código (Boas práticas, modularização) 15%
Documentação/Apresentação 15%
Back to top