This is a Sandbox environment to practice my Python skills. I'm following the NeetCode roadmap.
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 | Python Module |
---|---|---|
Contains Duplicate | Easy | contains_duplicate.py |
Valid Anagram | Easy | valid_anagram.py |
Two Sum | Easy | two_sum.py |
Group Anagrams | Medium | group_anagrams.py |
Top K Frequent Elements | Medium | top_k_frequent_elements.py |
Encode and Decode Strings | Medium | encode_decode_strings.py |
Product of Array Except Self | Medium | product_of_array_except_self.py |
Valid Sudoku | Medium | valid_sudoku.py |
Longest Consecutive Sequence | Medium | longest_consecutive_sequence.py |
Problem | Difficulty | Python Module |
---|---|---|
Valid Parentheses | Easy | valid_parentheses.py |
Min Stack | Medium | min_stack.py |
Evaluate Reverse Polish Notation | Medium | evaluate_reverse_polish_notation.py |
Generate Parentheses | Medium | generate_parentheses.py |
Daily Temperatures | Medium | daily_temperatures.py |
Car Fleet | Medium | car_fleet.py |
Largest Rectangle In Histogram | Hard | largest_rectangle.py |
Problem | Difficulty | Local Code Link |
---|---|---|
Valid Palindrome | Easy | valid_palindrome.py |
Two Sum II - Input Array Is Sorted | Medium | two_sum_ii.py |
3Sum | Medium | three_sum.py |
Container With Most Water | Medium | container_with_most_water.py |
Trapping Rain Water | Hard | trapping_rain_water.py |
Problem | Difficulty | Local Code Link |
---|---|---|
Binary Search | Easy | binary_search.py |
Search a 2D Matrix | Medium | search_2d_matrix.py |
Koko Eating Bananas | Medium | koko_eating_bananas.py |
Find Minimum In Rotated Sorted Array | Medium | find_min_in_rotated_sorted_array.py |
Search In Rotated Sorted Array | Medium | search_in_rotated_sorted_array.py |
Time Based Key Value Store | Medium | time_based_key_value_store.py |
Median of Two Sorted Arrays | Hard | median_of_two_sorted_arrays.py |
Problem | Difficulty | Local Code Link |
---|---|---|
Reverse Linked List | Easy | reverse_linked_list.py |
Merge Two Sorted Lists | Easy | merge_two_sorted_lists.py |
Reorder List | Medium | reorder_list.py |
Remove Nth Node From End of List | Medium | remove_nth_node_from_end_of_list.py |
Copy List With Random Pointer | Medium | copy_list_with_random_pointer.py |
Add Two Numbers | Medium | add_two_numbers.py |
Linked List Cycle | Easy | linked_list_cycle.py |
Find The Duplicate Number | Medium | find_the_duplicate_number.py |
LRU Cache | Medium | lru_cache.py |
Merge K Sorted Lists | Hard | merge_k_sorted_lists.py |
Reverse Nodes In K Group | Hard | reverse_nodes_in_k_group.py |