An open API service indexing awesome lists of open source software.

https://github.com/trainingbypackt/beginning-java-data-structures-and-algorithms-elearning

Sharpen your problem solving and data organization skills using Java data structures and algorithms
https://github.com/trainingbypackt/beginning-java-data-structures-and-algorithms-elearning

algorithm big-o-notation binary-tree boyer-moore bubble-sort datastructure hash hashing java lists merge-sort naive-bayes queue quick-sort stack

Last synced: 3 days ago
JSON representation

Sharpen your problem solving and data organization skills using Java data structures and algorithms

Awesome Lists containing this project

README

          

[![GitHub issues](https://img.shields.io/github/issues/TrainingByPackt/Beginning-Java-Data-Structures-and-Algorithms-eLearning.svg)](https://github.com/TrainingByPackt/Beginning-Java-Data-Structures-and-Algorithms-eLearning/issues)
[![GitHub forks](https://img.shields.io/github/forks/TrainingByPackt/Beginning-Java-Data-Structures-and-Algorithms-eLearning.svg)](https://github.com/TrainingByPackt/Beginning-Java-Data-Structures-and-Algorithms-eLearning/network)
[![GitHub stars](https://img.shields.io/github/stars/TrainingByPackt/Beginning-Java-Data-Structures-and-Algorithms-eLearning.svg)](https://github.com/TrainingByPackt/Beginning-Java-Data-Structures-and-Algorithms-eLearning/stargazers)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/TrainingByPackt/Beginning-Java-Data-Structures-and-Algorithms-eLearning/pulls)

# Beginning Java Data Structures and Algorithms [eLearning]
Algorithms and data structures are crucial for application performance. This course teaches you tools that you can use to build efficient applications. It starts with an introduction to algorithms and explains bubble, merge, quicksort, and other popular programming patterns. You’ll also learn about data structures such as binary tree, hash table, and graphs. The course progresses to advanced concepts, such as algorithm design paradigms and graph theory.

## What you will learn
* Learn about space and time complexities, expressing them using big O notation
* Work with classic sorting algorithms, such as merge and quicksort, using Java data structures
* Correctly implement basic and complex data structures (like hash tables and binary trees)
* Learn about higher-level design paradigms like divide and conquer and dynamic programming
* Apply powerful string matching techniques and optimize your application logic
* Master graph representations and learn about different graph algorithms, such as cycle detection, traversal, and shortest path

### Hardware requirements
For an optimal experience, we recommend the following hardware configuration:
* **Processor**: Intel Core i3 processor
* **Memory**: 8 GB RAM or more
* **Hard Disk**: 10 GB
* An Internet connection

### Software requirements
* **Operating system**: Windows 8 64–bit or MacOS
* **A text editor**: Notepad++
* **A terminal**: Command Prompt or PowerShell on Windows or Terminal on MacOS
* **A run-time environment**: Java Runtime Environment(JRE) 1.6 or higher
* **A software development kit**: Java SE Development Kit, JDK 8 (or a later version)