Análise de Algoritmos

 

Descrição da Disciplina

Nesta disciplina de análises de algoritmos iremos abordar os conceitos básicos de construção e análise dos principais tipos de algoritmos e apresentar metodologias de análise. Apresentaremos em detalhes conceitos fundamentais como conceito de complexidade, tempo de execução, análise assintótica, programação dinâmica, algoritmos de busca e ordenação, teoria de grafos e algoritmos diversos.

Duração

80 horas.

Programa do Curso

  • Dia 1: Tópicos preliminares. 
  • Dia 2: Conceitos Introdutórios – Parte I. 
  • Dia 3: Conceitos Introdutórios – Parte II. 
  • Dia 4: Conceitos Introdutórios – Parte III. 
  • Dia 5: Algoritmos de procura.
  • Dia 6: Algoritmos de ordenação. 
  • Dia 7: Estratégias e Design de Algoritmos. 
  • Dia 8: Algoritmos – Parte I. 
  • Dia 9: Algoritmos – Parte II. 
  • Dia 10: Algoritmos – Parte III. 

Dia 1: Tópicos preliminares

 

  • Funções especiais (piso, teto, logaritmos, etc). 
  • Inversas e composição de funções. 
  • Recursão matemática. 
  • Recorrência matemática. 
  • Indução matemática. 

Dia 2: Conceitos Introdutórios - Parte I

 

  • Ordens de crescimento ascintótico. 
  • Soluções por recorrências. 

Dia 3: Conceitos Introdutórios - Parte II

 

  • Soluções por recursão. 
  • Análise amortizada. 

Dia 4: Conceitos Introdutórios - Parte III

 

  • Randomização. 
  • Programação dinâmica. 

Dia 5: Algoritmos de procura

 

  • Procura linear. 
  • Análise de busca binária. 
  • tree search algorithm. 

Dia 6: Algoritmos de ordenação

 

  • Selection. 
  • Insertion. 
  • Merge. 
  • Quicksort. 

Dia 7: Estratégias e Design de Algoritmos

 

  • Divisão e conquista. 
  • Algoritmos gulosos. 
  • Teoria de complexidade. 

Dia 8: Algoritmos - Parte I

 

  • Algoritmo da mochila Booleana. 
  • Algoritmo da mochila fracionária. 
  • Aproximação para mochila booleana. 

Dia 9: Algoritmos - Parte II

 

  • Introdução à teoria dos grafos. 
  • Representação de dados (matriz de adjacência, proximidade, etc) . 
  • Passeios e caminhos. 
  • Florestas radicadas. 

Dia 10: Algoritmos - Parte III

 

  • Introdução à teoria de Ciclos.
  • Grafos acíclicos. 
  • Permutação topológica. 
  • Caminhos críticos. 

Bibliografia do curso

Torne-se um Profissional

Nossos treinamentos são divididos em módulos planejados, todos muito bem estruturados para você se tornar um profissional de qualidade e especializado dentro da área de dados.