Estruturas de Dados
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Ciência de Computadores |
Ocorrência: 2014/2015 - 2S
Ciclos de Estudo/Cursos
Língua de trabalho
Português
Objetivos
Reforçar competências de programação. Principais estruturas de dados, algoritmos básicos e técnicas de programação. Noções básicas de complexidade algorítmica.
Resultados de aprendizagem e competências
Ser capaz de escrever classes para estruturas de dados fundamentais. Saber implementar métodos eficientes de pesquisa e ordenação e outros algoritmos associados às estruturas de dados estudadas. Ser capaz de usar técnicas algorítmicas como a recursão, retrocesso e dividir-para-conquistar.
Modo de trabalho
Presencial
Programa
Introdução ao Java. Técnicas de programação: recursão, retrocesso e dividir para conquistar. Estruturas de dados sequenciais: arrays, listas, pilhas, filas, deques. Pesquisa sequencial e binária. Ordenação por selecção, inserção, bubble-sort, quick-sort e merge-sort. Introdução à complexidade algorítmica. Estruturas de dados não sequenciais: árvores binárias de pesquisa e mapas.
Bibliografia Obrigatória
Goodrich Michael T.;
Data structures and algorithms in Java. ISBN: 0-471-73884-0
Sedgewick Robert;
Introduction to programming in Java. ISBN: 978-0-321-49805-2
Métodos de ensino e atividades de aprendizagem
Aulas teóricas expositivas. Aulas práticas com exercícios de programação.
Tipo de avaliação
Avaliação distribuída com exame final
Componentes de Avaliação
Designação |
Peso (%) |
Exame |
70,00 |
Teste |
30,00 |
Total: |
100,00 |
Componentes de Ocupação
Designação |
Tempo (Horas) |
Frequência das aulas |
|
Total: |
0,00 |
Fórmula de cálculo da classificação final
Classificação final = (6*Teste+14*Exame)/100
(com "Teste" e "Exame" avaliados para 100)