刪除 Python 中的連續重複項


假設我們有一個由“R”和“L”組成的字串 s,我們必須刪除最少的字元,以便沒有連續的“R”和沒有連續的“L”。

因此,如果輸入類似於“LLLRLRR”,則輸出將為“LRLR”

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

  • seen:s 的第一個字元
  • ans:s 的第一個字元
  • 對於索引 1 至 s 末尾的每個字元 i 執行以下操作:
    • 如果 i 與 seen 不同,則
      • ans:ans + i
      • seen:i
  • 返回 ans

讓我們看看以下實現以獲得更好的理解:

示例

 即時演示

class Solution:
   def solve(self, s):
      seen = s[0]
      ans = s[0]
      for i in s[1:]:
         if i != seen:
            ans += i
            seen = i
      return ans
ob = Solution()
print(ob.solve("LLLRLRR"))

輸入

"LLLRLRR"

輸出

LRLR

更新時間:22-9 月 -2020

4K+ 瀏覽

開啟您的職業生涯

完成課程認證

開始
廣告