在Python中查找字符串的按字典顺序计算的最大回文子序列

假设我们有一个字符串S;我们必须找到该字符串在字典上最大的回文子序列。

因此,如果输入类似于“ nhoootutorial”,则输出将为“ uu”

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

  • ans:=空字符串

  • max_val:= s [0]

  • 对于1到s大小的范围内的i

    • max_val:= max_val的最大值,s [i]

  • 对于范围在0到s大小之间的i,执行

    • ans:= ans + s [i]

    • 如果s [i]与max_val相同,则

  • 返回ans

例 

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

def largest_palindromic_substr(s):
   ans = ""
   max_val = s[0]
   for i in range(1, len(s)):
      max_val = max(max_val, s[i])
   for i in range(0, len(s)):
      if s[i] == max_val:
         ans += s[i]
   return ans

s = "nhoootutorial"
print(largest_palindromic_substr(s))

输入项

"nhoootutorial"

输出结果

uu
猜你喜欢