Saltar para:
Logótipo
This page in english Ajuda Autenticar-se
Formação regular da Biblioteca |fevereiro a maio
Você está em: Início > EIC0013
Autenticação




Mapa das Instalações
Edifício A (Administração) Edifício B (Aulas) - Bloco I Edifício B (Aulas) - Bloco II Edifício B (Aulas) - Bloco III Edifício B (Aulas) - Bloco IV Edifício C (Biblioteca) Edifício D (CICA) Edifício E (Química) Edifício F (Minas e Metalurgia) Edifício F (Minas e Metalurgia) Edifício G (Civil) Edifício H (Civil) Edifício I (Electrotecnia) Edifício J (Electrotecnia) Edifício K (Pavilhão FCNAUP) Edifício L (Mecânica) Edifício M (Mecânica) Edifício N (Garagem) Edifício O (Cafetaria) Edifício P (Cantina) Edifício Q (Central de Gases) Edifício R (Laboratório de Engenharia do Ambiente) Edifício S (INESC) Edifício T (Torre do INEGI) Edifício U (Nave do INEGI) Edifício X (Associação de Estudantes)

Algoritmos e Estruturas de Dados

Código: EIC0013     Sigla: AEDA

Áreas Científicas
Classificação Área Científica
OFICIAL Programação

Ocorrência: 2018/2019 - 1S Ícone do Moodle

Ativa? Sim
Unidade Responsável: Departamento de Engenharia Informática
Curso/CE Responsável: Mestrado Integrado em Engenharia Informática e Computação

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
MIEIC 180 Plano de estudos a partir de 2009/10 2 - 7,5 70 202,5

Docência - Responsabilidades

Docente Responsabilidade
Luís Paulo Gonçalves dos Reis Regente
Ana Paula Cunha da Rocha Regente

Docência - Horas

Teóricas: 3,00
Teórico-Práticas: 2,00
Tipo Docente Turmas Horas
Teóricas Totais 1 3,00
Ana Paula Cunha da Rocha 3,00
Teórico-Práticas Totais 7 14,00
Luís Paulo Gonçalves dos Reis 4,00
Pedro Gonçalo Ferreira Alves Nogueira 4,00
Ana Paula Cunha da Rocha 2,00
Liliana da Silva Ferreira 4,00
Mais informaçõesA ficha foi alterada no dia 2018-09-17.

Campos alterados: Componentes de Avaliação e Ocupação, Programa

Língua de trabalho

Português

Objetivos

Na sequência das unidades curriculares de Introdução à Programação, é objetivo desta unidade curricular: recorrer às noções de programação já estabelecidas e sistematizar o uso de estruturas de informação e de algoritmos para resolver categorias de problemas;  usar, como paradigma de suporte ao desenvolvimento de programas, a orientação por objetos; dar ênfase à organização dos programas em torno de tipos de dados abstratos. Serão realizados pequenos projetos usando a linguagem C++.

Resultados de aprendizagem e competências

No final da unidade curricular, os estudantes deverão ter competência para: modelar problemas recorrendo ao paradigma da orientação por objetos; resolver problemas fazendo uso de tipos de dados abstratos e estruturas de dados simples lineares e não lineares.

Modo de trabalho

Presencial

Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)

O estudante deve possuir conhecimentos básicos de programação e linguagem C++.

Programa

Programação orientada por objetos. Herança e Polimorfismo. Aspetos básicos de UML. Linguagem C++. Análise de algoritmos: classes e complexidade. Algoritmos de pesquisa e ordenação. Tipos abstratos de dados. Iteradores. Estruturas de dados lineares e sua implementação: pilhas, filas e listas. Árvores binárias, árvores binárias de pesquisa e algoritmos associados. Tabelas de dispersão e algoritmos de manipulação. Filas de prioridade. Conjuntos Disjuntos. Árvores equilibradas: Árvores AVL e "Splay". Exemplos de aplicação.

Bibliografia Obrigatória

Weiss, Mark Allen; Data structures and algorithm analysis in C++. ISBN: 0-201-36122-1
Sedgewick, Robert; Algorithms in C++. ISBN: 0-201-35088-2

Bibliografia Complementar

Deitel, H. M.; C++ how to program. ISBN: 0-13-185757-6
Stroustrup, Bjarne; The C++ programming language. ISBN: 0-201-88954-4
Koenig, Andrew; Accelerated C++. ISBN: 0-201-70353-X
Cormen, Thomas H.; Introduction to algorithms

Métodos de ensino e atividades de aprendizagem

As aulas teóricas são usadas para exposição formal da matéria, acompanhada da apresentação de exemplos e sua discussão. Nas aulas práticas são resolvidos exercícios de programação em C++. Avaliações práticas são aplicadas ao longo do curso, em datas previamente anunciadas, onde os estudantes são continuamente avaliados a nível teórico e prático, com a realização de exercícios individuais em computador (Componente Individual). Os alunos efetuam trabalhos de grupo de pequena dimensão que são acompanhados fora das aulas e avaliados em dois momentos ao longo do curso (Componente de Grupo).

Software

Cute C++ Unit Testing Framework
Eclipse C++

Palavras Chave

Ciências Físicas > Ciência de computadores > Programação
Ciências Físicas > Matemática > Algoritmos

Tipo de avaliação

Avaliação distribuída sem exame final

Componentes de Avaliação

Designação Peso (%)
Teste 60,00
Trabalho laboratorial 40,00
Total: 100,00

Componentes de Ocupação

Designação Tempo (Horas)
Elaboração de projeto 60,00
Estudo autónomo 48,00
Frequência das aulas 70,00
Trabalho laboratorial 10,00
Total: 188,00

Obtenção de frequência

O estudante não pode exceder o limite de faltas previsto.

Fórmula de cálculo da classificação final

A avaliação da unidade curricular contém duas componentes: Componente Individual (CI) (60%) e Componente de Grupo (CG) (40%).

  • A Componente Individual (CI) é realizada individualmente, em três momentos distintos ao longo do curso:
  • Inclui duas componentes de igual peso: uma componente prática de programação usando testes unitários (CIP) e uma componente teórica(CIT)
  • É realizada individualmente em computador, com consulta ao material fornecido, e duração não superior a 2h30m
  • CI é a média aritmética das notas obtidas em cada um dos três momentos.
  • A avaliação da Componente de Grupo (CG) inclui 2 trabalhos (CG1 e CG2) a realizar em grupo (de 3 estudantes), de igual peso, sendo em cada um destes pontos de avaliação contabilizado o empenho e assiduidade do estudante no trabalho de grupo.


A Classificação Final (CF) é portanto computada da seguinte forma: CF = CI*0,6 + CG*0,4, onde:

CI = média das 3 notas obtidas nos momentos de avaliação individual

CG = avaliação correspondente à componente de grupo(média de CG1 e CG2)

Para aprovação na disciplina, o estudante deve obter uma classificação mínima de 40% (8 valores em 20) em qualquer das componentes: CIP, CIT, CG1 e CG2.

A Componente Individual (CI) é realizada em computador (a componente de programação envolve testes unitários), com recurso ao Sistema SIGEX.

Provas e trabalhos especiais

A avaliação em Época Especial inclui duas componentes (CE e CT):

  • Componente de Exame (CE) (60%), inclui:
  • uma parte prática de programação usando testes unitários (CEP)
  • uma parte teórica(CET)
  • Componente de Trabalho Prático(CT) (40%), relativo à implementação de um mini-projeto e elaboração do respetivo relatório. O Trabalho Prático deverá ser entregue até à data do exame e os estudantes devem contactar o regente da UC para escolha do trabalho a implementar.

A classificação final (CF) é computada como: CF = CE*0,6 + CT*0,4.

Para aprovação na disciplina, o estudante deve obter uma classificação mínima de 40% em qualquer das componentes CEP, CET e CT.

Avaliação especial (TE, DA, ...)

Os estudantes inscritos ao abrigo de regimes especiais sem frequência de aulas práticas:

  • podem efetuar a Componente de Grupo (CG) de avaliação constituindo grupo com outros colegas ou sozinhos, devendo acordar com os docentes o trabalho a realizar e as datas de avaliação dos mesmos
  • devem realizar a avaliação individual CI nas datas estipuladas.

Melhoria de classificação

A realizar na época seguinte da unidade curricular

Recomendar Página Voltar ao Topo
Copyright 1996-2019 © Faculdade de Engenharia da Universidade do Porto  I Termos e Condições  I Acessibilidade  I Índice A-Z  I Livro de Visitas
Página gerada em: 2019-05-21 às 00:38:08 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais