Try   HackMD

Dynamic Programming Study Guide

Basic DP Problems

Fundamental problems that introduce the concept of dynamic programming.

Matrix Path Problems

Problems involving finding optimal paths through a matrix.

Counting Paths in a 2D Array

Problems that involve counting the number of possible paths.

Substring and Subsequence Problems

Problems involving finding or manipulating substrings and subsequences.

Knapsack Problems

A class of problems involving optimizing a selection of items under constraints.

String Matching and Decoding

Problems involving string manipulation and decoding.

Time Series Problems

Problems that involve sequences of data points in time order.

Stock Trading Problems

A subset of time series problems focusing on stock trading scenarios.

Maximum Subarray Problems

Problems involving finding subarrays with maximum sum or product.

Edit Distance Problems

Problems involving calculating the minimum number of operations to transform one string into another.

Keyboard Problems

Problems involving simulating keyboard operations.

Matrix Area Problems

Problems involving finding areas or shapes within matrices.

Sequence Problems

Problems involving manipulating or analyzing sequences.

Problem Difficulty Legend

  • 🟩 Easy
  • 🟨 Medium
  • 🟧 Medium-Hard
  • 🟥 Hard
  • ⬛ Very Hard

Additional Resources