Distinct Subsequences
来源:互联网 发布:软件测试工具qtp 编辑:程序博客网 时间:2024/05/17 16:54
Given a string S and a string T, count the number of distinct subsequences of T in S.
A subsequence of a string is a new string which is formed from the original string by deleting some (can be none) of the characters without disturbing the relative positions of the remaining characters. (ie, "ACE"
is a subsequence of "ABCDE"
while "AEC"
is not).
Here is an example:
S = "rabbbit"
, T = "rabbit"
Return 3
.
public class Solution { public int numDistinct(String S, String T) { if (S == null || T == null) return 0; if (T.length() == 0) return 1; if (S.length() == 0) return 0; if (S.length() == 1 && T.length() == 1) { if (S.charAt(0) != T.charAt(0)) { return 0; } else { return 1; } } if (S.charAt(0) != T.charAt(0)) { return numDistinct(S.substring(1), T); } else { return numDistinct(S.substring(1), T.substring(1)) + numDistinct(S.substring(1), T); } }}
public class Solution { public int numDistinct(String S, String T) { int n = S.length(); int m = T.length(); int[] dp = new int[m]; for (int i = 0; i < n; ++i) { for (int j = m-1; j >= 0; --j) { if (T.charAt(j) == S.charAt(i)) { if (j==0) dp[0]++; else dp[j] += dp[j-1]; } } } return dp[m-1]; }}
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- Distinct Subsequences
- 代码比对
- 全双工改半双工制
- 解决errorpage里面取不到Authentication的问题
- HDU 2037 今年暑假不AC
- Linux认证复习题100道含答案 --linux基本操作
- Distinct Subsequences
- osgclip例子
- 为了解决业余时间做项目自己给自己偷懒找接口的问题我开通的这个博客
- leetcode power (x,n)
- 宽度自适应
- HDU 1789 Doing Homework again
- 贵的未必是好的:T5220和X86服务器上Oracle性能之比较
- 川哥个人网页
- poj3077