Python程式:去除字串中重複字元
假設我們有一個字串s。我們需要移除所有之前已經出現過的重複字元。最終字串的字元順序應與原始字串相同。
我們可以使用有序字典來維護字元的插入順序。值將是這些字元的頻率,但是這裡的頻率值並不重要。在形成字典之後,我們可以簡單地取鍵並連線它們以獲得字串。
因此,如果輸入類似於s = "bbabcaaccdbaabababc",則輸出將為"bacd"。
- d := 一個字典,其中鍵按照其插入順序儲存
- 對於字串s中的每個字元c,執行以下操作:
- 如果c不存在於d中,則
- d[c] := 0
- d[c] := d[c] + 1
- 如果c不存在於d中,則
- 按正確的順序將鍵連線起來以構成輸出字串並返回。
示例
讓我們看看下面的實現,以便更好地理解:
from collections import OrderedDict def solve(s): d = OrderedDict() for c in s: if c not in d: d[c] = 0 d[c] += 1 return ''.join(d.keys()) s = "bbabcaaccdbaabababc" print(solve(s))
輸入
"bbabcaaccdbaabababc"
輸出
"bacd"
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP