Dynamic programming in C#
Problems to practice
- Climbing Stairs
- House Robber
- Coin Change
- Unique Paths
- Longest Increasing Subsequence
- Word Break
- Partition Equal Subset Sum
Example: climbing stairs
public int ClimbStairs(int n) {
if (n <= 1) return 1;
int[] dp = new int[n + 1];
dp[0] = 1;
dp[1] = 1;
for (int i = 2; i <= n; i++) {
dp[i] = dp[i - 1] + dp[i - 2];
}
return dp[n];
}Can you explain it without the notes?
Dynamic programming in C#
Use your own words. Explain an example and one limitation before checking the explanation.
Check your explanation
Common questions
Turn this concept into a clear answer.
Practice this conceptAdapted from 17_DSA_DOTNET.md · “10. Dynamic programming in C#”. Examples are study fragments; framework behavior can depend on your version.