LeetCode(115) Distinct Subsequences(动态规划)
来源:互联网 发布:收货人 余杭嘉云淘宝 编辑:程序博客网 时间:2024/06/05 15:49
刷题地址
https://leetcode.com/problems/distinct-subsequences/#/description转载
http://blog.csdn.net/feliciafay/article/details/42959119
dp[i][j]的含义与变化
表示T的从0开始长度为i的子串和S的从0开始长度为j的子串的匹配的个数。
t[i-1] 与 s[j-1] 不相等
则 dp[i][j] = dp[i][j-1],就是不能使用S的最后一个字符t[i-1] 与 s[j-1] 相等
那么,可以自己选择是否使用S的最后一个字符
使用: dp[i-1][j-1]匹配好,然后T最后字符和S最后字符匹配。
不使用,就类似 t[i-1]与s[j-1]不等的情况。
AC
class Solution {public: int numDistinct(string s, string t) { int sLen = s.size(); int tLen = t.size(); vector<vector<int>> dp(tLen + 1, vector<int>(sLen+1)); for(int j =0; j <= sLen; j ++) { dp[0][j] = 1; } for(int i = 1; i <= tLen; i ++) { dp[i][0] = 0; } for(int i = 1; i <= tLen; i ++) { for(int j = 1; j <= sLen; j ++) { dp[i][j] = dp[i][j-1]; if(t[i-1] == s[j-1]) { dp[i][j] += dp[i-1][j-1]; } } } return dp[tLen][sLen]; }};
阅读全文
0 0
- LeetCode(115) Distinct Subsequences(动态规划)
- LeetCode Distinct Subsequences(动态规划)
- 115.leetcode Distinct Subsequences(hard)[动态规划]
- LeetCode 115. Distinct Subsequences| 动态规划
- 10069 - Distinct Subsequences(高精度+动态规划)
- LeetCode(115) Distinct Subsequences
- Leetcode Distinct Subsequences 动态规划法活用总结
- Leetcode Distinct Subsequences 动态规划法活用总结
- LeetCode: Distinct Subsequences [115]
- LeetCode 115 Distinct Subsequences
- [leetcode 115] Distinct Subsequences
- LeetCode(115) Distinct Subsequences
- leetcode || 115、Distinct Subsequences
- Distinct Subsequences leetcode 115
- leetcode 115: Distinct Subsequences
- LeetCode 115: Distinct Subsequences
- leetcode-115-Distinct Subsequences
- LeetCode 115、Distinct Subsequences
- LINUX系统以及ANDROID 平台log信息输出级别设置 [MTK]
- Django学习日记3
- Toast异常
- AudioCompare比较两个音频的相似度
- 渲染管线——光栅化之Bresenham绘线算法
- LeetCode(115) Distinct Subsequences(动态规划)
- 架构-分布式与集群的区别
- spring中如何将事务添加到切面中
- 网络直播“黑科技”:Stream Matrix
- 1.C/C++基础
- numpy的random模块
- 手机(局域网)远程连接 windows电脑
- 2叉树的遍历-深入理解递归与非递归的本质
- iOS推送小结