Luidi Simonetti
   Professor at Institute of Computing
   Fluminense Federal University
   D.SC. Federal University of Rio de Janeiro
   Systems Engineering and Computer Science
   Rio de Janeiro, Brasil, 2008.

Análise e Projeto de Algoritmos
TCC 00167 - B1 - Perí­odo 01/2015 - Horário: 18:00-22:00 - Segunda

Avisos:

Aulas:

    Março

  • 9 - Introdução a complexidade de Algoritmos e Máquinas RAM
  • 16 - Tamanho de um problema e Insertion-Sort
  • 16 - Complexidade local, Complexidade de algoritmos recursivo e Merge-Sort
  • 23 - Complexidade assintótica e custos
  • 23 - Divisão e Conquista
  • 30 - Busca binária, Máximo e Mínimo de uma lista e limite inferior para o problema
  • 30 - Quicksort e Limite inferior para ordenação


  • Abril

  • 6 - Algoritmo guloso e Árvore geradora mínima
  • 6 - Árvore geradora mínima
  • 13 - Codificação Huffman e escalonamento
  • 27 - Programação Dinâmica e problema da mochila
  • 20 - Não tem aula
  • 27 - Aula de duvida


  • Maio

  • 4 - P1
  • 4 - Programação Dinâmica e Escalonamento em linha de montagem
  • 11 - Caminho mínimo - Bellman-Ford e Multiplicação de Matrizes
  • 11 - Verificação de prova
  • 18 - Backtracking - problemas das n damas e etc
  • 18 - Classes de problemas (Tratável e Intratável, Decisão, Localização e Otimização)
  • 25 - Classes de problemas
  • 25 - Classes de problemas


  • Junho

  • 1 - Classes de problemas
  • 1 - Duvidas
  • 8 - P2
  • 15 - VR
  • 15 - Verificação de prova P2
  • 22 - Verificação de prova VR
  • 29 - Não tem aula


  • Julho

  • 6 - VS
  • 13 - Verificação de prova VS


  • Trabalho:

    • O Trabalho consiste na implementação de um algoritmo (prog. dinâmica ou backtracking).
    • O problema é individual e os interessados devem mandar um email pedindo o problema.
    • A linguagem de implementação pode ser Pascal, Fortran, C, C++ ou Java. Preferencia C ou C++.
    • O aluno deve enviar um e-mail com o fonte do algoritmo (arquivo texto) até o dia 5/6.
    • Trabalhos enviados em data/horário posterior não serão aceitos
    • Só considere como entregue depois de receber um email meu confirmando o recebimento.
    • O programa deve ler de um arquivo de entrada (entrada.txt) e escrever na tela a solução.
    • O formato da entrada está na descrição do problema
    • Além de enviar um email com o algoritmo tem que marcar o dia e hora da sua apresentação (até dia 12/6)

    Bibliografia:

    • Fundamentals of Computer Algorithms
      Autor: E. Horowitz

    • Algoritmos e Heurísticas
      Autores: Ruy Campello e Nelson Maculan

    • Grafos e Algoritmos Computacionais
      Autores: Jayme Szwarcfiter
      Ed. Campus

    • Introduction to Algorithms
      Autores: T.H. Cormen, C.E. Leiserson e R.L. Rivest
      MIT Press, Cambridge

    Sistema de Notas:

    • Nota Final = (P1 + P2 + T)/2