· Aula 1: estimativa do tempo de
processamento; tamanho de uma instância; problema de determinar se um número é primo ou composto; dado um inteiro n qual a complexidade de um algoritmo que repete n vezes uma operação elementar?
· Aula 2: Ordenação por Inseração e por Intercalação, algoritmos, implementação e análise das respectivas complexidades. Problema do Casamento Estável: algoritmos, análises e generalizações.
· Aula 3: Princípio de Divisão e Conquista. Problema da Sequência Consecutiva de Soma Máxima: algoritmos
O(n3) (iterativo), O(n2) (iter.), O(n log n) (recursivo), O(n) (rec. e iter.); e respectivas análises.
· Aula 4: Divisão e Conquista - Recorrência padrão e sua resolução. Teorema Mestre. Problema de Busca em Matrizes Ordenadas nas linhas e nas colunas.
Algoritmos O(n0.5 log n),
O(nlog 3
4
), outro algoritmo O(n0.5 log n), e um algoritmo
O(n0.5), e respectivas análises.
· Aula 5: Divisão e Conquista - Multiplicação de Polinômios
Algoritmos O(n2),
O(nlog 3
4
) (Div. e Conq.), e O(n log n) (FFT), e respectivas análises.
Problema de Ordenação e análise da ordenação por particionamento (Quick Sort).
· Aula 6: Divisão e Conquista - Mediana em O(n). Heaps e heapsort.