Plano de Ensino - CEFET-MG

MINISTÉRIO DA EDUCAÇÃO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS DIRETORIA DE GRADUAÇÃO CAMPUS TIMÓTEO

📘 Identificação da Disciplina

Campo Descrição
Disciplina Tópicos Especiais em Fundamentos de Engenharia de Computação: Técnicas de Programação
Código GT07FEC005.1
Início 08/2023
Carga Horária Total 60 horas-aula
Semanal 04 aulas
Créditos 04
Natureza Prática
Área de Formação Profissionalizante
Competências/Habilidades C06, C08, C09
Departamento DECOMTM

Aplicabilidade

  • Curso: Engenharia de Computação
  • Período:
  • Eixo: Fundamentos de Engenharia de Computação
  • Optativa: Sim (X)

📝 Ementa

Estudo e aplicação de técnicas avançadas para análise e desenvolvimento de algoritmos eficientes. Abordagem sistemática de paradigmas algorítmicos com foco na otimização de recursos computacionais (memória, CPU e disco) e na resolução de problemas complexos.

🎯 Objetivos

A disciplina deverá possibilitar ao estudante:

  1. Aplicar os fundamentos teóricos da análise de algoritmos.
  2. Desenvolver algoritmos eficientes para problemas computacionais.
  3. Implementar e avaliar diferentes estratégias algorítmicas.
  4. Analisar e comparar algoritmos em termos de eficiência.
  5. Resolver problemas práticos utilizando técnicas algorítmicas avançadas.

Pré-requisitos: Algoritmos e Estrutura de Dados I, Laboratório de Algoritmos e Estrutura de Dados I.

📑 Unidades de Ensino

Unidade Conteúdo Carga Horária
1 FUNDAMENTOS DA ANÁLISE DE ALGORITMOS: Estudo dos limites reais de execução como uso de memória, CPU, disco e restrições de tempo, memória e I/O em ambientes computacionais. 08h
2 TÉCNICAS DE PROJETO DE ALGORITMOS I: Recursividade, Tentativa e erro (Backtracking), Divisão e conquista. 08h
3 TÉCNICAS DE PROJETO DE ALGORITMOS I: Programação dinâmica. 08h
4 TÉCNICAS DE PROJETO DE ALGORITMOS II: Algoritmos gulosos, Backtracking. 08h
5 MATEMÁTICA COMPUTACIONAL: Aritmética e álgebra; Análise combinatória; Teoria dos números. 08h
6 ALGORITMOS EM GRAFOS: Ordenação Topológica, Fluxo em redes e Árvores Segmentadas. 12h
7 GEOMETRIA COMPUTACIONAL: Conceitos fundamentais; Algoritmos geométricos básicos. 08h
Total 60h

📚 Bibliografia

Bibliografia Básica

  1. CORMEN, Thomas H. et al. Algoritmos: teoria e prática. 3. ed. Rio de Janeiro: Elsevier, 2012.
  2. ZIVIANI, Nivio. Projeto de algoritmos: com implementação em Java e C++. São Paulo: Thomson Learning, 2007.
  3. FORBELLONE, André Luiz Villar; EBERSPÄCHER, Henri Frederico. Lógica de programação: a construção de algoritmos e estruturas de dados. 3. ed. São Paulo: Pearson Prentice Hall, 2005.

Bibliografia Complementar

  1. SEDGEWICK, Robert. Algorithms in C: parts 1-4: fundamentals, data structures, sorting, searching. 3rd ed. Boston: Addison-Wesley, 1998.
  2. SEDGEWICK, Robert. Algorithms in C++: parts 1-4: fundamentals, data structures, sorting, searching. 3. ed. Boston: Addison-Wesley, 1998.
  3. KNUTH, Donald Erwin. The art of computer programming: introduction to combinatorial algorithms and boolean functions. Upper Saddle River, N.J.: Addison-Wesley, 2008.
  4. HOROWITZ, Ellis; SAHNI, Sartaj. Fundamentos de estruturas de dados. Rio de Janeiro: Campus, 1987.
  5. MANBER, Udi. Introduction to algorithms: a creative approach. Massachusetts: Addison-Wesley, 1989.
Back to top