DSA
5 approaches incl. Horizontal Scanning, Vertical Scanning, Binary Search, and more. Optimal — Time O(s log m), Space O(1).
Covers: Brute Force, Optimal. Optimal — Time O(n), Space O(1).
Covers: Brute Force: generate all su…, Expansion on center, DP. Optimal — Time O(n<sup>2</sup>), Space O(n<sup>2</sup>).
Covers: Recursive, Memoized, Tabulation. Optimal — Time O(2n), Space O(1).
Covers: Memoized Version, Tabulation: 2-D, DP Approach 1D. Optimal — Time O(n*A), Space O(A).
Covers: Recursive Version, Memoized Version, Tabulation:. Optimal — Time O(n*A), Space O(n*A).
4 approaches incl. A. Recursive, B. Memoized, B. Tabulation, and more. Optimal — Time O(n), Space O(1).
DP approach. Optimal — Time O(R*C*C), Space O(R*C*C).
DP approach. Optimal — Time O(n^4), Space O(n^4).
Covers: Recursive, Memoized. Optimal — Time O(kn), Space O(2 * k).
Covers: Recursive, Memoized. Optimal — Time O(n), Space O(2 * 3).
Covers: Brute Force, Optimal. Optimal — Time O(m * n), Space O(m * n).
Covers: Naive, Better. Optimal — Time O(n), Space O(1).
Covers: Recursive, Memoized.
Covers: Recursive, Memoized, Binary Search. Optimal — Time O(e x f x logf), Space O(e x f).
Tabulation approach. Optimal — Time O(n*k), Space O(k).
4 approaches incl. Recursive, Memoized Version, Tabulation: Space Optimized, and more. Optimal — Time O(m*n), Space O(m*n).
Covers: Recursive, Memoized. Optimal — Time O(n), Space O(n).
Covers: Recursive, Memoized, Follow up - Return the indic…. Optimal — Time O(n), Space O(n*w).
5 approaches incl. Brute Force, Recursive, Memoized DP, and more. Optimal — Time O(m×n), Space O(n).
4 approaches incl. Brute Force, Memoized, DP, and more. Optimal — Time O(n*log n), Space O(n).
Covers: Recursive, Memoized version, Tabulation version. Optimal — Time O(n), Space O(1).
Covers: Recursive, Memoized. Optimal — Time O(m*n), Space O(m*n).
Covers: Recursive, Tabulation. Optimal — Time O(n^2), Space O(n^2).
Covers: DP, Binary Search. Optimal — Time O(n*log n), Space O(n).
Covers: Brute Force, Better, Building subproblem. Optimal — Time O(m*n), Space O(n).
Dynamic Programming. Time O(m * n), Space O(n).
DP approach.
Covers: Recursion, Memoized DP. Optimal — Time O(n^2), Space O(n^2).
Dynamic Programming. Time O(m*n), Space O(m*n).
Covers: Recursive, Memoized version. Optimal — Time O(logn), Space O(n).
Covers: Brute Force, Prefix & Suffix Product Trav…, DP. Optimal — Time O(n), Space O(1).
4 approaches incl. Recursive, Memoized version, Tabulation version, and more. Optimal — Time O(n), Space O(1).
4 approaches incl. A. Recursive, B. Recursive, B. Tabulation, and more. Optimal — Time O(n), Space O(1).
Covers: Recursive, Memoized Version, Tabulation version. Optimal — Time O(k*n), Space O(k).
Covers: Memoized, Binary Search. Optimal — Time O(e x f x logf), Space O(e x f).
Covers: Recursive, DP. Optimal — Time O(m*n), Space O(n).
4 approaches incl. Brute Force, Recursive, Memoized DP, and more. Optimal — Time O(m*n), Space O(n).
Covers: Brute Force: Recursion + Bac…, DP Solution: Tabulation, DP Solution: Tabulation - Sp…. Optimal — Time O(n), Space O(1).
Covers: Recursive, Memoized. Optimal — Time O(n*k), Space O(n*k).
Tabulation approach. Optimal — Time O(m*n), Space O(m*n).
Covers: Recursion, Greedy. Optimal — Time O(n), Space O(1).
Greedy. Time O(n), Space O(n).
Covers: Recursive, DP, Greedy. Optimal — Time O(n), Space O(1).
4 approaches incl. A. Recursive, B. Memoization, B. Tabulation, and more. Optimal — Time O(m * n), Space O(n).
5 approaches incl. Naive: Recursive, Memoization, Tabulation, and more. Optimal — Time O(n^2), Space O(n).
Backtracking approach. Optimal — Time O(27).
5 approaches incl. A. Recursive, B. Memoization, B. Tabulation, and more. Optimal — Time O(min(m,n), Space O(1).
A. DFS approach.
Memoized Version approach. Optimal — Time O(n x W), Space O(n).
Covers: Recursion, Memoized, Tabulation. Optimal — Time O(n*k), Space O(n*k ).
Covers: Brute Force: O(n²) DP, Solution: O(n log n) Patienc…. Optimal — Time O(n log n), Space O(n).
Covers: Memoized, tabulation. Optimal — Time O(n x n), Space O(n).
DP approach. Optimal — Time O(n*n), Space O(n).
Dynamic Programming. Time O(m + n).
Time O(n^2), Space O(n).
4 approaches incl. A. Recursive, B. Memoization, B. Tabulation, and more. Optimal — Time O(n * 4 * 3), Space O(4).
Covers: Recursion, Memoized DP. Optimal — Time O(n^2), Space O(n).