This is a Sandbox environment to practice my Java skills. I'm following the NeetCode roadmap.
Execute all the tests:
mvn clean test
Execute one specific test:
mvn test -Dtest=org.example.arrays.ContainsDuplicateTest
The NeetCode roadmap is a super useful guide designed to help you master coding interviews. It lays out a clear, step-by-step plan to learn important data structures and algorithms, starting from beginner-friendly concepts and working up to more advanced ones. The idea is to give you a structured path to follow, with curated problems from LeetCode that you can practice along the way.
All credit to Navdeep Singh.
Thank you 🙏 Navdeep for your work !
graph TD
A(Arrays & Hashing)
A --> C(Two Pointers)
A --> E(Stack)
C --> F(Binary Search)
C --> D[Sliding Window]
C --> G(Linked List)
G --> H(Trees)
F --> H
H --> J[Heap & Priority Queue]
J --> S(Intervals)
J --> N(Greedy)
J --> M(Advanced Graphs)
K --> L[Graphs]
H --> I(Tries)
H --> K[Backtracking]
K --> O(1-D DP)
O --> P
L --> M
L --> R(Math & Geometry)
L --> P(2-P DP)
O --> Q(Bit Manipulation)
Q --> R
Problem | Difficulty | Java Class |
---|---|---|
Contains Duplicate | Easy | ContainsDuplicate.java |
Valid Anagram | Easy | ValidAnagram.java |
Two Sum | Easy | TwoSum.java |
Group Anagrams | Medium | GroupAnagrams.java |
Top K Frequent Elements | Medium | TopKFrequent.java |
Encode and Decode Strings | Medium | EncodeDecode.java |
Product of Array Except Self | Medium | ProductExcept.java |
Valid Sudoku | Medium | ValidSudoku.java |
Longest Consecutive Sequence | Medium | LongestConsecutiveSeq.java |
Problem | Difficulty | Java Class |
---|---|---|
Valid Parentheses | Easy | ValidParentheses.java |
Min Stack | Medium | MinStack.java |
Evaluate Reverse Polish Notation | Medium | ReversePolish.java |
Generate Parentheses | Medium | GenerateParentheses.java |
Daily Temperatures | Medium | DailyTemperatures.java |
Car Fleet | Medium | CarFleet.java |
Largest Rectangle In Histogram | Hard | LargestRectangleInHistogram.java |