Skip to content

This repository is a structured LeetCode roadmap designed to help you master Data Structures and Algorithms (DSA) using Python. It follows a topic-wise progression, covering Easy, Medium, and Hard problems with optimized solutions and explanations.

Notifications You must be signed in to change notification settings

aranyaadheu/Leetcode-Roadmap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

Leetcode Roadmap

About

This roadmap is designed to provide a structured approach to mastering problem-solving on Leetcode using Python. It breaks down essential topics, categorizing problems into different levels of difficulty (Easy, Medium, Hard). Covering fundamental data structures, algorithms, and advanced techniques, this guide is perfect for beginners and experienced programmers preparing for technical interviews and coding competitions.

Total Breakdown

  • Easy: ~5 Problems (For each topic)
  • Medium: ~10 Problems
  • Hard: ~5 Problems
  • Total: ~280 Problems

Basics and Warm-Up

Big O Notation & Time Complexity

Arrays

  • Single Pass Problems (e.g., Two Sum, Best Time to Buy and Sell Stock)
  • Sliding Window (e.g., Maximum Subarray, Longest Substring Without Repeating Characters)
  • Prefix Sum (e.g., Subarray Sum Equals K)

Strings

  • Basic String Manipulation (e.g., Reverse String, Valid Palindrome)
  • Hashing with Strings (e.g., Group Anagrams, Longest Palindrome)

Intermediate Data Structures

Linked Lists

  • Basic Operations (e.g., Merge Two Sorted Lists, Remove Nth Node From End)
  • Slow and Fast Pointers (e.g., Linked List Cycle, Intersection of Two Linked Lists)

Stacks and Queues

  • Monotonic Stack (e.g., Daily Temperatures, Next Greater Element)
  • Queue and Deque Applications (e.g., Sliding Window Maximum)

Hashmaps and Sets

  • Basic Lookup Problems (e.g., Contains Duplicate, Intersection of Two Arrays)
  • Advanced Hashmap Problems (e.g., LRU Cache)

Trees and Graphs

Trees

  • Traversals (e.g., Inorder Traversal, Binary Tree Level Order Traversal)
  • Tree Properties (e.g., Diameter of Binary Tree, Maximum Depth of Binary Tree)

Binary Search Trees

  • Basic BST Operations (e.g., Validate BST, Lowest Common Ancestor)
  • Modifications (e.g., Insert/Delete in BST)

Graphs

  • BFS/DFS Basics (e.g., Number of Islands, Flood Fill)
  • Topological Sort (e.g., Course Schedule)

Algorithms

Sorting and Searching

  • Binary Search (e.g., Search in Rotated Sorted Array, Median of Two Sorted Arrays)
  • Sorting Variations (e.g., Merge Intervals, K Closest Points to Origin)

Recursion

Dynamic Programming

  • 1D DP (e.g., Climbing Stairs, House Robber)
  • 2D DP (e.g., Unique Paths, Longest Common Subsequence)
  • Knapsack Problems (e.g., Partition Equal Subset Sum)

Greedy

  • Interval Problems (e.g., Non-Overlapping Intervals, Minimum Number of Arrows to Burst Balloons)
  • Path Problems (e.g., Jump Game, Gas Station)

Advanced Topics

Backtracking

  • Combinatorial Problems (e.g., Permutations, Subsets)
  • Constraint Problems (e.g., N-Queens, Sudoku Solver)

Bit Manipulation

  • Basic Operations (e.g., Single Number, Hamming Distance)
  • Advanced Techniques (e.g., Maximum XOR of Two Numbers)

Trie (Prefix Tree)

  • Basic Trie Problems (e.g., Implement Trie, Longest Word in Dictionary)
  • Advanced Problems (e.g., Word Search II)

Mock Interviews

  • Mixed Problems from Various Topics
  • Time-Bound Practice

End

About

This repository is a structured LeetCode roadmap designed to help you master Data Structures and Algorithms (DSA) using Python. It follows a topic-wise progression, covering Easy, Medium, and Hard problems with optimized solutions and explanations.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published