在 Python 中查詢一個字串中的字典序最大的迴文子序列


假設我們有一個字串 S;我們必須找到該字串的字典序最大的迴文子序列。

因此,如果輸入類似於 “tutorialspointtutorial”,則輸出將是 “uu”

為了解決這個問題,我們將執行以下步驟 -

  • ans := 空字串

  • max_val := s[0]

  • i 從 1 到 s 的大小,迴圈執行以下操作

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

  • i 從 0 到 s 的大小,迴圈執行以下操作

    • 如果 s[i] 與 max_val 相同,則

      • ans := ans + s[i]

  • 返回 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 = "tutorialspointtutorial"
print(largest_palindromic_substr(s))

輸入

"tutorialspointtutorial"

輸出

uu

更新時間:20-08-2020

273 次瀏覽

Kickstart 您職業

完成課程獲得認證

開始
廣告
© . All rights reserved.