OBJETIVOS:
Estudo, através de exemplos, da correção,
da análise de eficiência e do desenvolvimento de
algoritmos e de suas estruturas de dados básicas.

PROGRAMA:
Alguns exemplos de algoritmos usando pilhas e filas.
Introdução aos conceitos de listas ligadas e ponteiros.
Algoritmos recursivos.
Busca, inserção e remoção em vetores e listas ligadas.
Busca binária.
Algoritmos de ordenação
(inserção, seleção, mergesort, heapsort, quicksort, etc.).
Algoritmos de casamento de padrões.
Alguns exemplos de algoritmos de enumeração e otimização sobre seqüências.
Prova informal da correção de algoritmos.
Estudo empírico da eficiência de algoritmos.