This repository is a space for algorithm and data structure practice (most of them in Java) collected from books, short courses and some exercises in coding platforms. Note that most of these exercises were firstly made by hand on a blank page which is how I recommend to do it.
And if you feel hungry of more challenges, exercises and practices, you can alway have a look to the coding Google competitions 💙
Topic | Description | Link to my solution |
---|---|---|
Arrays | Arrays and Strings practice. | exercises |
Linked List | Problems based on linked list structure. | exercises |
Stacks and Queues | Stacks and queues based solutions. | exercises |
Trees and Graphs | Covers trees and graphs structures and the different ways to traverse them. | exercises |
Graphs II | More exercises just focused on graphs and different strategies | exercises |
Bit Manipulation | Getting comfortable with bit operations | exercises |
Hash & Heaps | ||
OO Design | Practicing around the desing of a system with object-oriented principles. | exercises |
Recursion & Dynamic Programming | Solving recursion problems from different approaches. | exercises |
System Design | ||
Sorting and searching | Exercises based on popular searching and sorting algorithms with a twist. | exercises |
General C++ | ||
General Java | Some exercises to practice Java core concepts. | exercises |
DataBase | ||
Threads | Basics about concurrency and exercises from the course Multithreading from Udemy. | exercises |
Moderate | A bit harder than usual | exercises |
Hard |
REFERENCES & RESOURCES
General
- William Fiset’s youtube channel
- MIT Lectures
- Back to Back SWE channel
- System Design Course
- System Design Basics
- Git Scalability
- Patterns in LetCode problems
Just Coding