Python程式:透過交換字元使兩個相同長度的字串相等


假設我們有兩個長度為n的字串s和t。我們可以從s中取一個字元,從t中取一個字元,然後交換它們。我們可以進行無限次交換;我們需要檢查是否可以使這兩個字串相等。

因此,如果輸入類似於s = "xy",t = "yx",則輸出為True

為了解決這個問題,我們將遵循以下步驟:

  • st:= 將s和t連線後進行排序
  • 對於 i 從 0 到 st 的大小 - 1,步長為 2,執行:
    • 如果 st[i] 不等於 st[i+1],則
      • 返回 False
  • 返回 True

讓我們來看下面的實現,以便更好地理解:

示例

 線上演示

class Solution:
   def solve(self, s, t):
      st=sorted(s+t)
      for i in range(0,len(st),2):
         if st[i]!=st[i+1]:
            return False
      return True
ob = Solution()
print(ob.solve("xy", "yx"))

輸入

"xy", "yx"

輸出

True

更新於: 2020年10月6日

502 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告