2019.1 IFPE EDA
PROVA FINAL: [PLANILHA DE AVALIAÇÃO]
- A prova final está disponível como uma lista de exercícios na plataforma URI;
- A lista contém sete problemas, cada um valendo 2,0 pontos. Ou seja, basta resolver 5 dos 7 problemas propostos;
- Os problemas poderão ser resolvidos até às 22h do dia 09/07/19;
- As questões que envolvam estruturas de dados deverão ser respondidas usando as classes apropriadas do Java Collections framework.
Caso ainda não esteja cadastrado na turma da disciplina no URI, siga os passos abaixo:
1) Abra o link https://www.urionlinejudge.com.br/judge/en/disciplines/join/4303
2) Insira a chave gjL-A29 para entrar na turma.
OBS: Se for detectado plágio no código submetido, o estudante ficará com nota ZERO.
Na disciplina Estrutura de Dados vamos aprender sobre as principais estruturas de armazenamento de dados utilizadas em programas orientados a objetos. Também estudaremos sobre algoritmos de ordenação e busca.
OBS: Nosso foco será na compreensão das estruturas de dados disponibilizadas na API Java. Não aprenderemos a criar todas as estruturas, mas sim quando e como utilizá-las. Quanto aos algoritmos de ordenação e busca, iremos estudar como implementar os mais conhecidos.
A disciplina terá um foco 50% teórico e 50% prático.
Boa parte dos exercícios estarão disponíveis na plataforma URI: www.urionlinejudge.com.br
PROGRAMA:
- Aula 00 - Revisão (if/else, for/while, array): Exercício - Respostas
- Aula 01 - Array bidimensional (matriz) -> capítulo 6 da Apostila K19: Exercício - Respostas
- Aula 02 - Recursividade (exercício no final dos slides)
- Aula 03 - Noções gerais de desempenho de algoritmos
- Aula 04 - Algoritmos de Ordenação
- Aula 05 - Algoritmo de busca binária
- Aula 06 - API java para ordenação (métodos e interfaces)
- Aula 07 - Listas (ArrayList, LinkedList)
- Aula 08 - Filas e Pilhas (Queue e Stack)
- Aula 09 - Conjuntos e Mapas (Set, TreeSet, HashSet, HashMap)
- Aula 10 - Noções básicas de grafos
REFERÊNCIAS:
- LAFORE, Robert. Estruturas de dados & algoritmos em Java. Ciência Moderna, 2005.
- CAELUM, Algoritmos e Estrutura de Dados em Java. Disponível em: https://www.caelum.com.br/apostila-java-estrutura-dados.
- William J. Collins. Data Structures and the Java Collections Framework. 3rd Edition. Wiley, 2011.
- Mark Allen Weiss. Data Structures and Problem Solving Using Java. 4th edition. Pearson, 2009.
- Y. Daniel Liang. Introduction to Java Programming. Pearson, 10th edition, 2015.
AVALIAÇÃO: as notas serão compostas por duas provas + exercícios de laboratório. Normalmente os exercícios serão desenvolvidos durante as aulas. Caso contrário, poderão ser feitos em casa e enviados para o professor por email (elmano.cavalcanti no domínio garanhuns.ifpe.edu.br).
- Ver nota das avaliações e exercícios
FERRAMENTAS UTILIZADAS NAS AULAS PRÁTICAS:
- Eclipse IDE
LINKS:
- https://www.cs.usfca.edu/~galles/visualization/Algorithms.html
- https://www.toptal.com/developers/sorting-algorithms
- http://www.cs.armstrong.edu/liang/animation/web/BinarySearch.html
VÍDEOS: