2019.2 Estrutura de Dados (subsequente)
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.
E-mail da turma: tecnicoeminformatica.ifpe2018.2@gmail.com
AVISO: Todos deverão se cadastrar na plataforma URI e entrar na disciplina:
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 durante e 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) - código de exemplo (solução URI)
- Aula 07 - Listas (ArrayList, LinkedList)
- Aula 08 - Filas e Pilhas (Queue e Stack) - Resposta da Questão 1068
- Aula 09 - Conjuntos e Mapas (Set, TreeSet, HashSet, HashMap)
- Aula 10 - Noções básicas de grafos
LIVRO-TEXTO:
- 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.
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: