Data Structures was a subject introduction the fundemental data structures, and their implementation in Java. It had has objectives teach students about data structures and Java, focusing in skills like:
- Fundamental Java Concepts:
- Classes, objects, attributes and methods
- Primitive types, Strings, warappers, arrays and and enum types
- Expressions, operators and control flow instructions
- Input/Output and the the Scanner class
- Packages and default libraries of Java
- Principles of software development, style and documentation
- Object Oriented Programming:
- Goals, principles, patterns and inheritance mechanism
- Interfaces and Abstract Data Types (ADTs)
- Using generics and iterators
- Asymptotic Analysis Concepts:
- Basic notions of asymptotic analysis
- Main complexity classes and how to compare them
- Examples of algorithmic analysis
- Algorithm Design Techniques:
- Structures Programming
- Recursion
- Exhaustive search and backtracking
- Divid-and-conquer
- Fundamental Data Structures:
- Arrays and matrices
- Simple linked lists, circular linked lists and doubly linked lists
- Árvores binárias, árvores de pesquisa e heaps
- Abstract Data ypes and their possible Implementations:
- Sequences, stacks, queues and deques
- Associative containers: sets and maps
- Priority queues
- Exercices/exame: Some exercises preparing for the final exam
- Exercices/leetcode: Some exericices for some leetcode problems
- Exercices/test: Preparation for the pratical test
- Exercices/test_pratico: My solutions for the pratical test and the zip with test questions
- Exercices/week*: The solution for each week assignment during the semester
Final Grade: 17/20