Description
This two-day Beginning Java Data Structures and Algorithms training class explores core algorithms and implementations and provides a base understanding of runtime complexity theory and various methods and concepts.
Objectives
Upon successful completion of this course, the student will be able to:
- Learn about space and time complexities express them using big O notation.
- Explore various classic sorting algorithms, such as merge and quick sort.
- Understand the workings of basic (Lists, queues and stacks) and complex data structures (hash tables and binary trees).
- Gain an insight into various algorithm design paradigms (Greedy, Divide and Conquer and Dynamic programming).
- Discover string matching techniques.
- Master graph representations and learn about different graph algorithms, such as cycle detection, traversal and shortest path.
Prerequisites
Basic understanding of object-oriented programming techniques