給定乙個字串 s 和乙個字串 t,計算在 s 的子串行中 t 出現的個數。
乙個字串的乙個子串行是指,通過刪除一些(也可以不刪除)字元且不干擾剩餘字元相對位置所組成的新字串。(例如,「ace」 是 「abcde」 的乙個子串行,而 「aec」 不是)
我的**
static int x=()();
class solution
for(int i=2;i<=t.length();i++)
for(int j=i;j<=s.length();j++)
}return f[t.length()][s.length()];
}};
我的一維動態規劃**
static int x=()();
class solution
for(int i=2;i<=t.length();i++)
}return f[s.length()];
}};
網上的**,二維動態規劃轉化為一維動態規劃
static int x=()();
class solution
};
非動態規劃方法
class solution
}return ans[t.size()];
}};
115 不同的子串行
題目.high dp用熟了反而覺得簡單了。s字串增加乙個字元,要麼這個字元與t的最後乙個字元相同,要麼不相同 package main import fmt func numdistinct s string t string int iflen t 0 dp make int len s 1 fo...
115 不同的子串行
給定乙個字串s和乙個字串t,計算在s的子串行中t出現的個數。字串的乙個 子串行 是指,通過刪除一些 也可以不刪除 字元且不干擾剩餘字元相對位置所組成的新字串。例如,ace 是 abcde 的乙個子串行,而 aec 不是 題目資料保證答案符合 32 位帶符號整數範圍。示例 1 輸入 s rabbbit...
leetcode 115 不同的子串行
思路 動態規劃 狀態定義 f x,y 記t中 0,x 範圍的子串為t 記s中 0,y 範圍的子串為s f x,y 表示在s 中t 出現的個數。狀態轉移 1 對於x 0的情況,a 當y 0時,如果s.charat 0 t.charat 0 則f 0,0 1 否則f 0,0 0。b 當y 0 時,如果s...