-Ementa Livre para assuntos relevantes na área de Algoritmos
3. Cursos Relacionados
CIÊNCIAS DA COMPUTAÇÃO (208) - Currículos: 1996-1 (Optativa); 2007-1 (Optativa)
4. Objetivos
4.1 Objetivo Geral:
Resolver problemas computacionais semelhantes aos encontrados nas Maratonas de Programação realizadas anualmente pela Sociedade Brasileira de Computação (SBC).
4.2 Objetivos Específicos:
Escolher o algoritmo adequado à resolução de cada problema (de maratona) proposto
Justificar a escolha com base na corretude e na eficiência da solução encontrada
Implementar a solução (em C ou C++) e submeter a um juiz online
Discutir possíveis alternativas algorítmicas para o mesmo problema
5. Conteúdo Programático
Problemas ad-hoc e de ordenação [8 horas-aula]
Problemas que dependem de estruturas de dados [8 horas-aula]
Problemas associados a paradigmas de resolução: Backtracking e Divisão e conquista [8 horas-aula]
Problemas associados a paradigmas de resolução: Programação dinâmica e Algoritmos gulosos [8 horas-aula]
Problemas associados a processamento de strings [8 horas-aula]
Problemas que envolvem diretamente a matemática [8 horas-aula]
Sobre teoria de números
Combinatoriais
Com probabilidade
Problemas que envolvem grafos: Busca em grafos [8 horas-aula]
Problemas que envolvem grafos: Árvores geradoras de custo mínimo e Caminhos de custo mínimo [8 horas-aula]
Problemas que envolvem Fluxo em grafos e problemas de Geometria Computacional [8 horas-aula]