[ MAC5711 - ANÁLISE de ALGORITMOS]

 

"Ao verificar que um dado programa está muito lento,
uma pessoa prática pede uma máquina mais rápida ao seu chefe.
[...] Entretanto, o ganho potencial que uma máquina mais rápida pode proporcionar
é tipicamente limitado por um fator de 10, por razões técnicas ou econômicas.
Para obter um ganho maior de desempenho, é preciso buscar melhores algoritmos.
Como veremos adiante, um algoritmo rápido rodando em uma máquina lenta sempre acaba vencendo
para instâncias grandes do problema. Sempre."

- S. S. Skiena, The Algorithm Design Manual

 

Programa

Segundo o programa oficial, os objetivos da disciplina MAC5711 são

A justificativa oficial da disciplina MAC5711 é a seguinte:

Ainda segundo o programa oficial, o conteúdo de MAC5711 é o seguinte:

A disciplina tem carga de 4 horas de aulas teóricas por semana durante cerca de 12 semanas e dá direito a 8 créditos.

 

Pré-requisitos

Os pré-requisitos de MAC5711 são noções básicas de estruturas de dados e teoria dos grafos. Esses pré-requisitos correspondem aos conteúdos das disciplinas  MAC5710 (Estruturas de Dados e sua Manipulação)  e  MAC5770 (Introdução à Teoria dos Grafos).  

Também é desejável que os alunos tenham uma certa experiência de programação,  particulamente em linguagem C. Familiaridade com a manipulação de ponteiros é especialmente importante.

 


Last modified: Mon Oct 16 13:20:44 BRST 2017
Paulo Feofiloff
IME-USP