Beginning Java Data Structures and Algorithms
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.
Public Classes: Delivered live online via WebEx and guaranteed to run . Join from anywhere!
Private Classes: Delivered at your offices , or any other location of your choice.
- 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.
- Algorithms and Complexities
- Developing our first algorithm
- Measuring algorithmic complexity with Big O notation
- Identifying algorithms with different complexities
- Sorting Algorithms and Fundamental Data Structures
- Introducing bubble sort
- Understanding quick sort
- Using merge sort
- Getting started with fundamental data structures
- Hash Tables and Binary Search Trees
- Introducing hash tables
- Getting started with binary search trees
- Algorithm Design Paradigms
- Introducing greedy algorithms
- Getting started with divide and conquer algorithms
- Understanding dynamic programming
- String Matching Algorithms
- Beginning naive search algorithm
- Getting started with the Boyer-Moore string searching algorithm
- Introducing other string matching algorithms
- Graphs, Prime Numbers, and Complexity Classes
- Representing graphs
- Traversing a graph
- Calculating shortest paths
- Prime numbers in algorithms
- Other concepts in graphs
Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.
Experience in the following is required for this Java Fundamentals class:
- Basic understanding of object-oriented programming techniques.