如何在Python中用def定义基础函数实现字符串重复字母去除
去除字符串相邻重复字母的Python实现
函数实现
def remove_adjacent_duplicates(input_str: str) -> str: # 处理空字符串或单字符的边界场景 if len(input_str) <= 1: return input_str res = [] for char in input_str: # 仅当结果列表为空,或最后一个元素与当前字符不重复时才添加 if res and res[-1] == char: continue res.append(char) return ''.join(res)
功能验证
- 输入示例:
"abbcdddea" - 运行测试代码:
print(remove_adjacent_duplicates("abbcdddea"))
- 输出结果:
abcdea
实现说明
- 时间复杂度为O(n),n为输入字符串长度,仅需要遍历一次字符串即可完成处理
- 空间复杂度最坏为O(n),当输入字符串没有相邻重复字符时,临时存储列表需要保存所有字符
- 完全保留原有字符的出现顺序,仅过滤相邻的重复内容
内容的提问来源于stack exchange,提问作者Rodrigo Henrique
相关产品推荐
相关产品推荐

