用 Python 编写程序,计算给定字符串中出现多次的 k 长度子字符串
pythonserver side programmingprogramming更新于 2026/1/12 20:28:17
假设我们有一个字符串 s 和一个数字 k,我们必须找出 s 中出现多次的 k 长度子字符串的数量。
因此,如果输入为 s = "xxxyyy", k = 2,则输出为 2
要解决这个问题,我们将遵循以下步骤 −
- seen := 一个新列表
- 对于范围为 0 到 s - k 大小的 i,执行
- t := s 的子字符串 [从索引 i 到 i + k - 1]
- 在 seen 的末尾插入 t
- mp := 所有不同项的映射已见元素及其出现次数
- 返回 mp 中出现次数大于 1 的每个元素的所有出现次数之和
让我们看看下面的实现以便更好地理解 −
示例
class Solution:
def solve(self, s, k):
from collections import Counter
seen = []
for i in range(len(s) - k + 1):
t = s[i : i + k]
seen.append(t)
s = Counter(seen)
return sum(1 for x in s.values() if x > 1)
ob = Solution()
print(ob.solve("xxxyyy",2))
输入
"xxxyyy",2
输出
2
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

