目录
- 题目
- 解析
- 状态表示
- 状态转移方程
- 初始化
- 填表顺序
- 返回值
- 代码
题目
解析
状态表示
状态转移方程
初始化
填表顺序
返回值
返回dp[m][n]
代码
class Solution {public int numDistinct(String s, String t) {int m = t.length(), n = s.length();int[][] dp = new int[m+1][n+1];//初始化for(int i = 0; i <= n; i++) dp[0][i] = 1;for(int i = 1; i <= m; i++)for(int j = 1; j <= n; j++){dp[i][j] = dp[i][j-1];if(t.charAt(i-1) == s.charAt(j-1)) dp[i][j] += dp[i-1][j-1];}return dp[m][n]; }
}