Python 程序用于计算字符串中子字符串出现的次数
假設我們有一個字串 s 和一個子字串 t,我們必須計算 t 在 s 中出現了多少次。
因此,如果輸入類似於 s = "abaabcaabababaab",t = "aab",那麼輸出將是 3,因為子字串為 ab(aab)c(aab)abab(aab)。
為了解決這個問題,我們將執行以下步驟:-
- cnt := 0
- 對於範圍從 0 到 (s 的大小 - t 的大小) 中的 i,執行
- 如果從索引 i 到 i + t 的大小 - 1 的 s 子字串與 t 相同,則
- cnt := cnt + 1
- 如果從索引 i 到 i + t 的大小 - 1 的 s 子字串與 t 相同,則
- 回傳 cnt
範例
我們看看以下執行,以獲得更深入的了解
def solve(s, t): cnt = 0 for i in range(0, len(s) - len(t) + 1): if s[i:i + len(t)] == t: cnt = cnt + 1 return cnt s = "abaabcaabababaab" t = "aab" print(solve(s, t))
輸入
"abaabcaabababaab", "aab"
輸出
3
广告