Alocação dinâmica de memória. Listas lineares, listas encadeadas, pilhas, filas, hashing, árvores binárias. Balanceamento de árvores binárias. Estrutura de algoritmos recursivos. Métodos de ordenação.