檢查給定字串在 Python 中是否是迴文串或圓形排列的程式


假設我們有一個字串 s,我們必須檢查 s 的任意排列是否是迴文串。

因此,如果輸入類似 s = "admma",則輸出將為 True,因為我們可以將 "admma" 重新排列為 "madam",這是一個迴文串。

要解決此問題,我們將遵循以下步驟 -

  • c := 一個對映,儲存 s 的每個單獨字元計數
  • count := 0
  • 對於 c 的所有值的列表中的每個 i,執行
    • 如果 i 為奇數,則
      • 如果 count 與 0 相同,則
        • count := count + 1
        • 從迴圈中退出
      • 返回 False
  • 返回 True

讓我們看看以下實現以便更好地理解 -

示例

 現場演示

from collections import Counter
class Solution:
   def solve(self, s):
      c = Counter(s)
      count = 0
      for i in c.values():
         if i % 2 != 0:
            if count == 0:
               count += 1
               continue
            return False
      return True
ob = Solution()
s = "admma"
print(ob.solve(s))

輸入

"admma"

輸出

True

更新日期: 2020 年 10 月 20 日

472 次觀看

開啟您的 職業

完成課程即可獲得認證

立即開始
廣告
© . All rights reserved.