首页 > 解决方案 > 如何在Python中找到给定字符的最大重复子字符串?

问题描述

给定一些字符串说'aabaaab',我将如何找到a的最大子字符串。所以它应该返回'aaa'。任何帮助将不胜感激。

def sub_string(s):


   best_run = 0
   current_run = 0

   for char in s:
      if char == 'a'
          current_run += 1
      else:
        current_letter = char

   return(best_run)

我有类似上面的东西。不知道我可以在哪里修复它。

标签: pythonalgorithm

解决方案


不是最有效但直接的解决方案:

word = "aasfgaaassaasdsddaaaaaafff"

substr_count = 0
substr_counts = []
character = "f"
for i, letter in enumerate(word):
    if (letter == character):
        substr_count += 1
    else:
        substr_counts.append(substr_count)
        substr_count = 0
    if (i == len(word) - 1):
        substr_counts.append(substr_count)

print(max(substr_counts))



推荐阅读