国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

115. Distinct Subsequences

2019-11-09 20:51:53
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

對(duì)字符串的dp還是挺難想出來(lái)的,其實(shí)情況往往都是自己想復(fù)雜了。哎 說(shuō)說(shuō)這一道題,dp【i】【j】 分別代表i是t,子串 。 j是原串 如果t i != s j,Dp【i】【j】 = dp【i】【j -1】,因?yàn)榧热徊黄ヅ?,那么原串多一個(gè)字符也不影響,所以就等于上一個(gè)j-1

如果相等,就是匹配的話,分兩個(gè)情況 1,t i 和s j匹配,那么dp【i】【j】 就加上dp【i - 1】【j - 1】 2,雖然t i 和s j匹配,但是我們不把他們匹配的話,就是說(shuō)加入t i已經(jīng)跟之前s 0 到 s j-1 匹配了,就是多一個(gè)sj字符而已,所以dp【i】【j】 就加上dp【i】【j - 1】

2刷的時(shí)候要重新想, 而且要刷那個(gè)只用一維vector的那個(gè)dp。

class Solution {public: int numDistinct(string s, string t) { int n = s.length(); int m = t.length(); vector<vector<int>> dp(m + 1, vector<int>(n + 1, 0)); for(int j = 0; j <= n; ++ j) dp[0][j] = 1; for(int j = 1; j <= n; ++ j) for(int i = 1; i <= m; ++ i) dp[i][j] = t[i - 1] == s[j - 1] ? dp[i - 1][j - 1] + dp[i][j - 1] : dp[i][j - 1]; return dp[m][n]; }};
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 花莲县| 博白县| 泾源县| 东明县| 泰顺县| 泰州市| 吉首市| 潜江市| 固阳县| 东兰县| 通渭县| 堆龙德庆县| 垫江县| 青岛市| 苍溪县| 霸州市| 周宁县| 罗平县| 盱眙县| 木兰县| 霍山县| 四平市| 普宁市| 石阡县| 巴彦县| 东安县| 临清市| 铜鼓县| 民县| 巴南区| 金溪县| 池州市| 安化县| 华亭县| 盱眙县| 阳西县| 信宜市| 泰兴市| 太仆寺旗| 天长市| 通化县|