Conteúdo da Disciplina

Abaixo, o conteúdo da disciplina organizado por módulos de estudo.

Apresentação e Contexto

  • Maratona de Programação e Juízes Automáticos
  • Classes de Problemas
  • Conteúdo Preparatório (Revisão)

Módulo 1: Fundamentos

  • Análise de Complexidade
  • Busca Binária
  • Ordenação (MergeSort)
  • Recorrências e Teorema Mestre

Módulo 2: Paradigmas de Resolução

Recursividade e Divisão e Conquista - Recursividade - Divisão e Conquista - Contagem de Inversões

Gulosos e Backtracking - Algoritmos Gulosos - Backtracking

Programação Dinâmica - Introdução à PD - O Problema da Mochila (Knapsack) - Problema do Troco - Maior Subsequência Crescente (LIS) - Maior Sequência Comum (LCS) - Soma Máxima em Intervalo - DP em Árvores

Módulo 3: Matemática Computacional

  • Teoria dos Números
  • Combinatória e Probabilidade

Módulo 4: Grafos

  • Introdução e Travessia (BFS/DFS)
  • Caminhos Mínimos
  • Árvores Geradoras Mínimas (AGM)
  • Fluxo em Redes

Módulo 5: Estruturas de Dados Avançadas

  • Árvores Segmentadas (SegTrees)

Módulo 6: Geometria Computacional

  • Conceitos Básicos
  • Algoritmos Geométricos

Módulo 7: Tópicos Extras

  • Processamento de Strings
Back to top