Realizar uma introdução à análise e desenho de algoritmos e
estruturas de dados. Apresentar os algoritmos e as estruturas de
dados fundamentais, os métodos informais para a prova da sua
correcção e as técnicas para avaliação do seu desempenho.
Os estudantes que terminam com
sucesso esta unidade curricular serão capazes de:
- Conhecer, compreender e utilizar os algoritmos e as estruturas de
dados fundamentais
- Analisar a correcção e o desempenho de algoritmos simples
- Escolher de forma fundamentada as estruturas de dados mais adequadas
a cada problema
- Desenhar estruturas de dados ligadas e algoritmos para a sua
manipulação
Programa resumido
Estruturas de dados fundamentais: arrays, listas ligadas e
árvores. Algoritmos de ordenação. Algoritmos de pesquisa e
estruturas
de dados associadas. Tipos de dados abstractos. Técnicas para a
análise de desempenho de algoritmos. Métodos para a prova
informal de correcção.
Bibliografia
- R. Sedgewick , Algorithms in Java, 3ªedição , Addison-Wesley
, 2002
Avaliação
- Quatro séries de exercícios e quatro fichas
- Um teste final, realizado nas datas de exame (nota mínima de
9,5 valores)