Prev Up Next
Go backward to Objectivo
Go up to Top
Go forward to Avaliação

Programa

  1. Complementos sobre programação.
    1. A linguagem de programação C: complementos.
    2. Alguns aspectos da linguagem C++ e da programação por objectos; noção de classes e de objectos. Exempos.
    3. Modularização em C++: classes e métodos. Modularização em C através da divisão em ficheiros; visibilidade entre módulos.
  2. Introdução à análise de algoritmos
    1. Comportamento assimptótico, notação O(), Theta()Omega.
    2. Análise no caso médio e no pior caso.
    3. Recorrências; alguns métodos de solução de recorrências.
    4. Exemplos
  3. Tipos de dados abstractos
    1. Definição abstracta dos tipos de dados
    2. Implementação e uso: vantagens da separação
    3. Implementação em C e em C++
  4. Estruturas de informação.
    1. Estruturas abstractas de dados e implementações.
    2. [ Memória sequêncial e ligada. ]
    3. [ Listas lineares: "stacks", "filas" e "deques". ]
    4. Árvores binárias.
    5. Dicionários e sua implementação.
    6. Filas de prioridade e "heaps".
    7. Tabelas de "hashing".
  5. Alguns Paradigmas da Programação com aplicação a diversos problemas.
    1. "Dividir para conquistar".
    2. Programação Dinâmica.
    3. Tabelação.
    4. Pesquisas em árvores implícitas.
  6. Introdução aos algoritmos aleatorizados.
  7. Algoritmos em domínios específicos
    1. Algoritmos relativos a grafos
    2. Algoritmos relativos a pesquisa de "Strings"

Prev Up Next