Código: | CC2001 | Sigla: | CC2001 | Nível: | 200 |
Áreas Científicas | |
---|---|
Classificação | Área Científica |
OFICIAL | Ciência de Computadores |
Ativa? | Sim |
Página Web: | http://www.dcc.fc.up.pt/~pribeiro/aulas/daa1415/ |
Unidade Responsável: | Departamento de Ciência de Computadores |
Curso/CE Responsável: | Licenciatura em Ciência de Computadores |
Sigla | Nº de Estudantes | Plano de Estudos | Anos Curriculares | Créditos UCN | Créditos ECTS | Horas de Contacto | Horas Totais |
---|---|---|---|---|---|---|---|
L:CC | 60 | Plano de estudos a partir de 2014 | 2 | - | 6 | 56 | 162 |
MI:ERS | 105 | Plano Oficial desde ano letivo 2014 | 2 | - | 6 | 56 | 162 |
Aprendizagem de técnicas de concepção e análise de algoritmos eficientes.
Enriquecimento do conhecimento sobre modelos genéricos de tipos de problemas e técnicas algorítmicas a eles associadas. Experiência prática na aplicação de algoritmos genéricos a problemas concretos. Competência na análise da complexidade de algoritmos.
Conhecimentos de programação (C/C++ ou JAVA), de algoritmos básicos (de contagem, pesquisa e de ordenação) e de algumas estruturas de dados. Preferencialmente, o estudante deverá ter concluído as unidades curriculares de "Introdução à Programação" e de "Estruturas de Dados", ou equivalente.
Complexidade algorítmica: análise assintótica, recorrências, algumas classes de complexidade. Técnicas de desenho de algoritmos: dividir para conquistar, algoritmos ávidos e programação dinâmica. Estruturas de dados especializadas: filas de prioridade, conjuntos disjuntos e árvores de pesquisa equilibradas. Algoritmos de grafos: pesquisa em largura e em profundidade, árvores de cobertura mínima, caminhos mais curtos, problemas de fluxo.
Aulas teóricas para exposição da matéria acompanhada da discussão de alguns exemplos. Aulas práticas laboratoriais para resolução de folhas de exercícios e de problemas em computador ao estilo dos propostos em concursos de programação ACM (análise de problemas, desenvolvimento e implementação de programas, teste e correção). Proposta de problemas adicionais para resolução extra-aula e com avaliação automática pelo sistema Mooshak.
Designação | Peso (%) |
---|---|
Exame | 80,00 |
Teste | 20,00 |
Total: | 100,00 |
Designação | Tempo (Horas) |
---|---|
Frequência das aulas | 0,00 |
Trabalho laboratorial | 0,00 |
Total: | 0,00 |
Não serão registadas as presenças nem marcadas faltas nas aulas teóricas e nas práticas laboratoriais. No entanto, semanalmente serão feitos questionários online cujo preenchimento é obrigatório. Cada questionário estará online durante 7 dias e irá conter perguntas de escolha múltipla relativas à materia lecionada na semana anterior. A nota obtida em cada um dos questionário não contará para avaliação, mas para obter frequência um estudante terá de ter respondido a pelo menos 80% dos questionários.
Irão existir 12 questionários, pelo que o número máximo de questionários não preenchidos é de 2.
Perde a frequência por não obtenção de nota mínima numa componente da avaliação o estudante que tenha nota prática igual a zero.
Classificação da época normal: C = max(E,F)*0.8 + NP >= 9.5
Classificação da época de recurso: C = E*0.8 + NP >= 9.5
No decorrer do semestre são realizados dois testes escritos e um teste de programação. As provas escritas (testes e exames) consistem em perguntas gerais e perguntas sobre problemas vistos nas aulas teóricas e práticas. O teste de programação é obrigatório consiste na submissão no sistema Mooshak da resolução de problemas relacionados com os propostos nas aulas práticas.
O teste prático é obrigatório para todos os estudantes inscritos.
Os estudantes aprovados em 2013/2014 que pretendam efetuar melhoria de classificação terão de realizar o exame final e o teste prático Mooshak (não realizarão os testes escritos). O exame incidirá sobre a matéria lecionada em 2014/2015 (incluindo a relativa aos exercícios propostos nas aulas práticas).