Na primeira parte desta disciplina vamos estudar e aplicar técnicas de projeto e análise de algoritmos. Na segunda parte vamos estudar os conceitos, representações e problemas clássicos relacionados com grafos.
Veja o programa e o critério de avaliação da disciplina.
Os alunos desta disciplina devem inscrever-se no grupo uem-tgaa para receberem informações e discutirem o conteúdo da disciplina. Por favor, use o seu nome verdadeiro na lista para o professor poder identificá-lo.
O livro base para esta disciplina é Algoritmo: Teoria e Prática, 2ª edição.
Os materiais utilizados em sala de aula estão disponíveis para download logo abaixo. O estudo utilizando apenas este material não é suficiente para o acompanhamento da disciplina. Recomendamos a leitura das referências no final de cada apresentação e a resolução (por parte do aluno) de todos os exercícios listados no material.
Os trabalhos devem ser entregues de acordo com as seguintes normas:
Dia(s) | Conteúdo |
---|---|
06, 08 e 10/02 | Exemplo prático da importância do projeto e análise de algoritmos. (download) |
13/02 | Capítulo 1: Introdução. Capítulo 2: ordenação por inserção - corretude. |
15/02 | Capítulo 2: Ordenação por inserção - análise do tempo de execução. |
17/02 | Capítulo 2: Ordenação por intercalação. |
24/02 | Capítulo 3: Crescimento de funções - notação assintótica. |
27/02 | Exercícios do capítulo 2. |
29/02 | Capítulo 3: Crescimento de funções - notações padrão e funções comuns. |
02/03 | Exercícios do capítulo 3. Indução. |
05/03 | Capítulo 4: Recorrências - método da substituição. |
07/03 | Não houve aula. Paralisação. |
09/03 | Capítulo 4: Recorrências - método da árvore de recursão. |
12/03 | Capítulo 4: Recorrências - método mestre. |
14/03 | Exercícios sobre recorrências. |
16/03 | Capítulo 6: Heapsort. |
19/03 | Capítulo 7: Quicksort. |
21/03 | Capítulo 8: Ordenação em tempo linear - ordenação por contagem. |
23/03 | Exercícios. |
26/03 | Exercícios. |
28/03 | Capítulo B.4: Introdução a teoria dos grafos. |
30/03 | Avaliação 1 - parte a. |
02/04 | Capítulo 22: Algoritmos elementares de grafos - representação. |
04/04 | Capítulo 22: Algoritmos elementares de grafos - busca em largura. |
09/04 | Capítulo 22: Algoritmos elementares de grafos - busca em largura. |
11/04 | Capítulo 22: Algoritmos elementares de grafos - busca em profundidade. |
13/04 | Capítulo 22: Algoritmos elementares de grafos - busca em profundidade. |
16/04 | Capítulo 22: Algoritmos elementares de grafos - ordenação topológica. |
18/04 | Capítulo 22: Algoritmos elementares de grafos - componentes fortemente conexos. |
20/04 | Capítulo 22: Algoritmos elementares de grafos - exercícios. |
23/04 | Capítulo 24: Caminhos mais curtos de única origem - Bellman-Ford. |
25/04 | Avaliação 1 - parte b. |
27/04 | Capítulo 24: Caminhos mais curtos de única origem - Gaos. |
30/04 | Capítulo 24: Caminhos mais curtos de única origem - Exercícios |
02/05 | Capítulo 24: Caminhos mais curtos de única origem - Dijkstra. |
04/05 | Capítulo 24: Caminhos mais curtos de única origem - Exercícios |
07/05 | Capítulo 25: Caminhos mais curtos de todos os pares - Floyd-Warshall |
09/05 | Não houve aula. |
11/05 | Não houve aula. |
14/05 | Não houve aula. Aniversário de Maringá. |
16/05 | Capítulo 23: Árvores espalhadas mínimas. Algoritmo de Kruskal. |
18/05 | Capítulo 23: Árvores espalhadas mínimas. Algoritmo de Prim. |
21/05 | Exercícios. |
23/05 | Exemplo de implementação. |
25/05 | Exemplo de implementação. |
28/05 | Teoria da complexidade. |
30/05 | Problema do Caixeiro Viajante. |
01/06 | Implementação do trabalho. |
04/06 | Problema do Carteiro Chinês. |
06/06 | Implementação do trabalho. |
08/06 | Implementação do trabalho. |
11/06 | Avaliação 2 |
13/06 | Correção do trabalho. |
15/06 | Correção do trabalho. |
27/06 | Avaliação Final |