Skip to content

DSA pattern-based prep for Google STEP, Microsoft, and FAANG internships. Track progress, revise, and share resources with others.

Notifications You must be signed in to change notification settings

DevEnjoysMath/leetcode-dsa-prep

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

4 Commits
ย 
ย 

Repository files navigation

Hi there! ๐Ÿ‘‹ This repository is a collection of DSA patterns and problems I personally used to prepare for software engineering internships like:

  • Google STEP
  • Microsoft Explore
  • Meta University
  • Amazon SDE Intern
  • And more!

Itโ€™s designed to be simple, practical, and organized by topic, so you can focus on mastering the right patterns without getting overwhelmed.


๐Ÿงญ How to Use This Repo

  • ๐Ÿ“‚ Go through the folders by topic (e.g., Sliding Window, BFS, etc.)
  • โœ… Use the checklists to track your progress.
  • ๐Ÿ’ก Most problems are from LeetCode and are chosen for interview relevance.
  • โœ๏ธ Feel free to fork, modify, or contribute!

๐Ÿ“‚ Folder Structure (by Pattern)

dsa-prep
โ”‚
โ”œโ”€โ”€ 01_prefix_sum
โ”œโ”€โ”€ 02_two_pointers
โ”œโ”€โ”€ 03_sliding_window
โ”œโ”€โ”€ 04_fast_slow_pointers
โ”œโ”€โ”€ 05_linked_list_reversal
โ”œโ”€โ”€ 06_monotonic_stack
โ”œโ”€โ”€ 07_top_k_heap
โ”œโ”€โ”€ 08_intervals
โ”œโ”€โ”€ 09_binary_search_variants
โ”œโ”€โ”€ 10_binary_tree_traversals
โ”œโ”€โ”€ 11_dfs
โ”œโ”€โ”€ 12_bfs
โ”œโ”€โ”€ 13_matrix
โ”œโ”€โ”€ 14_backtracking
โ”œโ”€โ”€ 15_dynamic_programming
โ””โ”€โ”€ README.md

Each folder includes practice problems with links and short explanations (WIP for some).


โœ… Problem Checklist

Here's a sample. Full list is in each folder.

๐Ÿ”ข 01. Prefix Sum

  • LC 303 โ€“ Range Sum Query: Immutable
  • LC 525 โ€“ Contiguous Array
  • LC 560 โ€“ Subarray Sum Equals K

๐Ÿ‘ฏโ€โ™‚๏ธ 02. Two Pointers

  • LC 167 โ€“ Two Sum II
  • LC 15 โ€“ 3Sum
  • LC 11 โ€“ Container With Most Water

๐ŸชŸ 03. Sliding Window

  • LC 643 โ€“ Max Average Subarray I
  • LC 3 โ€“ Longest Substring Without Repeating Characters
  • LC 76 โ€“ Minimum Window Substring

๐Ÿข 04. Fast and Slow Pointers

  • LC 141 โ€“ Linked List Cycle
  • LC 202 โ€“ Happy Number
  • LC 287 โ€“ Find the Duplicate Number

๐Ÿ” 05. Linked List In-Place Reversal

  • LC 206 โ€“ Reverse Linked List
  • LC 92 โ€“ Reverse Linked List II
  • LC 24 โ€“ Swap Nodes in Pairs

๐Ÿ“‰ 06. Monotonic Stack

  • LC 496 โ€“ Next Greater Element I
  • LC 739 โ€“ Daily Temperatures
  • LC 84 โ€“ Largest Rectangle in Histogram

๐Ÿฅ‡ 07. Top K Elements (Heap)

  • LC 215 โ€“ Kth Largest Element in an Array
  • LC 347 โ€“ Top K Frequent Elements
  • LC 373 โ€“ Find K Pairs with Smallest Sums

๐Ÿ“† 08. Overlapping Intervals

  • LC 56 โ€“ Merge Intervals
  • LC 57 โ€“ Insert Interval
  • LC 435 โ€“ Non-overlapping Intervals

๐Ÿ” 09. Modified Binary Search

  • LC 33 โ€“ Search in Rotated Sorted Array
  • LC 153 โ€“ Find Minimum in Rotated Sorted Array
  • LC 240 โ€“ Search a 2D Matrix II

๐ŸŒฒ 10. Binary Tree Traversal

  • LC 257 โ€“ Binary Tree Paths
  • LC 230 โ€“ Kth Smallest Element in a BST
  • LC 124 โ€“ Binary Tree Maximum Path Sum
  • LC 107 โ€“ Level Order Traversal II

๐Ÿง  11. Depth First Search (DFS)

  • LC 133 โ€“ Clone Graph
  • LC 113 โ€“ Path Sum II
  • LC 210 โ€“ Course Schedule II

๐ŸŒŠ 12. Breadth First Search (BFS)

  • LC 102 โ€“ Binary Tree Level Order Traversal
  • LC 994 โ€“ Rotting Oranges
  • LC 127 โ€“ Word Ladder

๐Ÿงฎ 13. Matrix Traversal

  • LC 733 โ€“ Flood Fill
  • LC 200 โ€“ Number of Islands
  • LC 130 โ€“ Surrounded Regions

๐Ÿงฉ 14. Backtracking

  • LC 46 โ€“ Permutations
  • LC 78 โ€“ Subsets
  • LC 51 โ€“ N-Queens

๐Ÿ’ธ 15. Dynamic Programming

  • LC 70 โ€“ Climbing Stairs
  • LC 322 โ€“ Coin Change
  • LC 300 โ€“ Longest Increasing Subsequence
  • LC 416 โ€“ Partition Equal Subset Sum
  • LC 312 โ€“ Burst Balloons
  • LC 1143 โ€“ Longest Common Subsequence

๐ŸŒŸ Bonus Problems

These are mix-type problems or just slightly harder, but they strengthen your understanding:

  • LC 23 โ€“ Merge K Sorted Lists (Heap + Linked List)
  • LC 138 โ€“ Copy List with Random Pointer (HashMap + Linked List)
  • LC 329 โ€“ Longest Increasing Path in Matrix (DFS + Memoization)
  • LC 212 โ€“ Word Search II (Trie + Backtracking)

๐Ÿ™Œ Contributions Welcome

Found a bug, want to add more problems, or have suggestions?
Open an issue or a pull request โ€” happy to improve this together!


โญ If You Found This Helpful...

Please give this repo a star โญ โ€” it helps others find it and motivates me to keep building and updating this resource.


โ€œConsistency beats cramming. One pattern a day keeps rejection away.โ€ ๐Ÿš€

About

DSA pattern-based prep for Google STEP, Microsoft, and FAANG internships. Track progress, revise, and share resources with others.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published