Python 中的迴文子字串
假設我們有一個字串;我們必須計算這個字串中有多少個迴文子字串。擁有不同起始索引或結束索引的子字串被計算為不同的子字串,即使它們包含相同的字元。因此,如果輸入類似於“aaa”,那麼輸出將是 6,因為有六個迴文子字串,如“a”、“a”、“a”、“aa”、“aa”、“aaa”
要解決這個問題,我們將遵循以下步驟 -
- count := 0
- 對於從 0 到字串長度的 i
- 對於從 i + 1 到字串長度 + 1 的 j
- temp := 從索引 i 到 j 的子字串
- 如果 temp 為迴文,則將計數增加 1
- 對於從 i + 1 到字串長度 + 1 的 j
- 返回計數器
示例(Python)
讓我們看看以下實現以獲得更好的理解 -
class Solution: def countSubstrings(self, s): counter = 0 for i in range(len(s)): for j in range(i+1,len(s)+1): temp = s[i:j] if temp == temp[::-1]: counter+=1 return counter ob1 = Solution() print(ob1.countSubstrings("aaaa"))
輸入
"aaaa"
輸出
10
廣告