标签:
题目描述:此题存在递推关系,考虑DP。
得到递推公式:
public class Solution {
public int NumDistinct(string s, string t) {
if(string.IsNullOrWhiteSpace(s)){
return 0;
}
if(string.IsNullOrWhiteSpace(t)){
return 1;
}
var dp = new int[s.Length+1,t.Length + 1];
for(var i = 0;i < s.Length + 1; i++){
dp[i,0] = 1;
}
for(var j = 1; j < t.Length + 1; j++){
dp[0,j] = 0;
}
for(var i =1 ;i < s.Length + 1; i++){
for(var j = 1; j < t.Length + 1; j++){
if(s[i-1] == t[j-1]){
dp[i,j] = dp[i-1,j] + dp[i-1,j-1];
}
else{
dp[i,j] = dp[i-1,j] ;
}
}
}
return dp[s.Length, t.Length];
}
}版权声明:本文为博主原创文章,未经博主允许不得转载。
LeetCode -- Distinct Subsequences
标签:
原文地址:http://blog.csdn.net/lan_liang/article/details/48086757