在Python中检查字符串是否重复字符串的程序

假设我们有一个字符串,我们必须检查它是否是重复的字符串。

因此,如果输入类似于string =“ helloworldhelloworld”,则输出将为True

为了解决这个问题,我们将遵循以下步骤-

  • n:= s的大小

  • 定义一个功能findFactors()。这将花费n

  • f:=一个新集合

  • 我:= 1

  • 当我*我<= n时

    • 将(n / i)的商插入f

    • 将我插入f

    • 如果n mod i等于0,则

    • 我:=我+ 1

    • 返回f

    • 从主要方法中,执行以下操作-

    • 事实:= findFactors(n)

    • 实际上,对于每个我,

      • 返回True

      • 进行下一次迭代

      • 如果我和n相同

      • ss:= s [从索引0到i-1]

      • val:=在s中出现ss

      • 如果val与(n / i)的商相同,则

      • 返回False

      让我们看下面的实现以更好地理解-

      示例

      class Solution:

         def solve(self, s):

            n = len(s)

            def findFactors(n):

               f = set()         i = 1

               while(i * i <= n):

                  if(n % i == 0):

                     f.add(int(n / i))

                     f.add(i)

                  i+= 1

                  return f

               fact = findFactors(n)

               for i in fact:

                  if(i == n):

                     continue

                  ss = s[:i]

                  val = s.count(ss)

                  if(val == int(n / i)):

                     return True

               return False

      ob = Solution()print(ob.solve("helloworldhelloworld"))

      输入值

      "helloworldhelloworld"

      输出结果

      True

      以上是 在Python中检查字符串是否重复字符串的程序 的全部内容, 来源链接: utcz.com/z/354930.html

      回到顶部