Python程式查詢包含唯一字元的字串總數
假設我們有一個包含小寫字母的字串 s,我們需要找到包含唯一字元的所有子字串的總數。
因此,如果輸入類似於“xxyy”,則輸出將為 6,因為子字串為 [x, x, xx, y, y, yy]
為了解決這個問題,我們將遵循以下步驟:
- total := 0
- previous := 空字串
- 對於字串 s 中的每個字元 c,執行以下操作:
- 如果 c 與 previous 不相同,則:
- previous := c
- temp := 1
- 否則:
- temp := temp + 1
- total := total + temp
- 如果 c 與 previous 不相同,則:
- 返回 total
讓我們看看以下實現,以便更好地理解:
示例
class Solution: def solve(self, s): total = 0 previous = '' for c in s: if c != previous: previous = c in_a_row = 1 else: in_a_row += 1 total += in_a_row return total ob = Solution() print(ob.solve("xxyy"))
輸入
"xxyy"
輸出
6
廣告