Código: | CC202 | Sigla: | CC202 |
Áreas Científicas | |
---|---|
Classificação | Área Científica |
OFICIAL | Ciência de Computadores |
Ativa? | Sim |
Unidade Responsável: | Departamento de Ciência de Computadores |
Curso/CE Responsável: | Licenciatura em Geologia |
Sigla | Nº de Estudantes | Plano de Estudos | Anos Curriculares | Créditos UCN | Créditos ECTS | Horas de Contacto | Horas Totais |
---|---|---|---|---|---|---|---|
L:F | 2 | Plano de estudos a partir de 2008 | 2 | - | 7,5 | - | 202,5 |
L:G | 1 | P.E - estudantes com 1ª matricula anterior a 09/10 | 3 | - | 7,5 | - | 202,5 |
P.E - estudantes com 1ª matricula em 09/10 | 3 | - | 7,5 | - | 202,5 | ||
L:Q | 0 | Plano de estudos Oficial | 3 | - | 7,5 | - | 202,5 |
O estudante deverá ser capaz de:
- compreender, utilizar e desenvolver programas com tipos abstratos de dados (TAD) de acordo com os requisitos de problemas propostos;
- compreender e utilizar as noções de atributo e método de um tipo abstrato de dados.
- utilizar e adaptar, programando-os, TADs que implementam listas ligadas, pilhas, filas, árvores binárias, heaps, tabelas de hash e grafos;
- analisar trechos de algoritmos do ponto de vista da complexidade computacional e situá-los numa ordem de complexidade;
- programar funções recursivas;
- programar e analisar algoritmos de procura e inserção sequencial, em lista ordenada, em árvore ordenada e em tabela de hash;
- programar e analisar algoritmos de ordenação tais como o bubblesort, mergesort. quicksort e heapsort.
- programar e analisar algoritmos de criaçao e manipulação de estruturas de dados como árvores binárias, árvores binárias ordenadas, heaps e grafos.
Nota: nesta unidade curricular a programação é feita utilizando a linguagem Python.
O estudante é capaz de:
- compreender, utilizar e desenvolver programas com tipos abstratos de dados (TAD) de acordo com os requisitos de problemas propostos;
- compreender e utilizar as noções de atributo e método de um tipo abstrato de dados.
- utilizar e adaptar, programando-os, TADs que implementam listas ligadas, pilhas, filas, árvores binárias, heaps, tabelas de hash e grafos;
- analisar trechos de algoritmos do ponto de vista da complexidade computacional e situá-los numa ordem de complexidade;
- programar funções recursivas;
- programar e analisar algoritmos de procura e inserção sequencial, em lista ordenada, em árvore ordenada e em tabela de hash;
- programar e analisar algoritmos de ordenação tais como o bubblesort, mergesort. quicksort e heapsort.
- programar e analisar algoritmos de criaçao e manipulação de estruturas de dados como árvores binárias, árvores binárias ordenadas, heaps e grafos.
Nota: nesta unidade curricular a programação é feita utilizando a linguagem Python.
Revisão do Python. Tipos abstractos de dados: atributo e método. Colecções de objectos: listas ligadas,, filas, e pilhas. Recursividade. Noções de complexidade algorítmica. Algoritmos de procura e inserção: procura sequencial, binária em tabela de hash. Algoritmos de ordenação. Árvores binárias: não ordenadas e ordenadas. Árvores de procura e armazenamento. Heaps. Grafos.
- Aulas teóricas em parte expositivas e em parte demonstrativas da resolução de problemas.
- Aulas práticas em laboratório.
- Exercícios formativos (auto-avaliação) em computador, para realizar fora das aulas e utilizando uma plataforma de validação automática de programas através de testes unitários.
- Plataforma de e-learning (Moodle) com pdfs das transparências apresentadas nas aulas e dos exercícios práticos apresentados.
- Esta plataforma tem também um forum onde são feitos anúncios relativos à disciplina e onde os alunos.
- Avaliação distribuída com exame final:
* 2 testes de programação: 3 valores cada
* exame final: 14 valores.
Designação | Peso (%) |
---|---|
Exame | 70,00 |
Participação presencial | 0,00 |
Teste | 30,00 |
Total: | 100,00 |
Designação | Tempo (Horas) |
---|---|
Estudo autónomo | 60,00 |
Frequência das aulas | 75,00 |
Total: | 135,00 |
* Obter nota maior que zero num dos testes práticos.
* Ter sucesso em pelo menos 50% (ponderado) das tarefas de auto-avaliação propostas.
0.2*MPT+0.1*PTP+0.7*EX
MPT: melhor teste prático
PTP: pior teste prático
EX: exame
pode melhorar em recurso a nota do exame na época normal e combinar com as notas dos testes.