Algoritmos e Estruturas de Dados
- Detalhes
- Categoria: Disciplina
- CARVALHO, Adelaide, Práticas de C# - Algoritmia e Programação Estruturada, FCA, 2010 CARVALHO, Adelaide, Práticas de C# - Programação Orientada por Objetos, FCA, 2011 CORMEN, Thomas, Algortimos, Teoria e prática, Editora Campus CLARK, Dan, Beginning C# Object-Oriented Programming, Apress, 2013 ROCHA, António M., A.; Análise da Complexidade de Algoritmos, FCA, 2014 VASCONCELOS, José Braga, Algoritmia e Estruturas de Dados, Centro Atlântico, 200
- Engenharia Informática (L) (ISLA Gaia)
- 6155
- 18752
- Algoritmos e Estruturas de Dados
- ISLA Gaia6155-18752
- 1
- 6
- 0
- 27
- Não
- Português
- Inclusão de metodologias ativas de aprendizagem Exposição interativa Aprendizagem baseada em problemas
- Obrigatório
- Ser capaz de analisar a complexidade e eficiência dos algoritmos mais relevantes; Ser capaz de implementar as estruturas de dados mais relevantes, nomeadamente arrays, matrizes, listas, pilhas, filas e arvores; Uso técnicas algorítmicas, como seja pesquisa, ordenação; Compreender e implementar técnicas de programação recursivas; Dominar a linguagem C#.
- 1. Conceitos de Algoritmos e Estruturas de Dados Analise da eficiência de algoritmos Notações assintóticas 2. Estruturas de dados dinâmicas Vetores e Matrizes Pilhas, Filas, Listas Arvores e Grafos Operações com as estruturas (Inserir, alterar, eliminar e ordenar) 3. Ordenação e Pesquisa Ordenação: Bubble Sort, Quick Sort, Selection Sort, Insertion Sort, Shell Sort, Merge Sort Pesquisa: sequencial, binária, hashing Comparação dos algoritmos 4. Recursividade Conceitos base Função Fatorial, Fibonacci, Tail Recursion, outras funções Problemas clássicos de funções recursivas 5. Implementação em C# Ficheiros, streams e serialização Tratamento de erros
Descrição dos instrumentos de avaliação (individuais e de grupo) ¿ testes, trabalhos práticos, relatórios, projetos... respetivas datas de entrega/apresentação... e ponderação na nota final.
Exemplo:
Descrição
Data limite
Ponderação
Teste de avaliação
Julho
70%
Portfolio (Trabalhos, Avaliação formativa e desafios)
Julho
30%
Enunciado dos trabalho, orientações e template de relatório disponivel no Moodle
- Semestral
- Analisar a complexidade das principais estruturas de dados dinâmicas: vetores (arrays), matrizes, listas, pilhas, filas. Estudar os principais algoritmos de pesquisa e ordenação. Implementar as estruturas e os algoritmos em C#.