python - 给定一个字符串 S,使用 python 递归地从中删除连续的重复项
问题描述
我正在添加 str[1] ,这会导致留下一个重复的元素,但如果不这样做,则不会打印该字符串。任何解决方案
def removeCD(str):
l = len(str)
if l == 0 or l == 1:
return str
if(str[0]==str[1]):
return str[1] + removeCD(str[2:])
else:
return str[0] + removeCD(str[1:])
string = input().strip()
print(removeCD(string))
解决方案
当字符相等时,您再次添加重复字符。这应该有效:
def removeCD(str):
l = len(str)
if l == 0 or l == 1:
return str
if(str[0]==str[1]):
return removeCD(str[1:])
else:
return str[0] + removeCD(str[1:])
string = input().strip()
print(removeCD(string))
推荐阅读
- linux - 如何使用引号和回车符 grep 长 html 字符串
- dll - 检测到 PInvokeStackImbalance
- amazon-web-services - AWS sagemaker笔记本上的venv不工作
- reactjs - Reactjs 用户切片中的错误 - React Redux Toolkit
- python - 将 WordSearch 生成器变量保存到 CSV 文件
- mfc - (MFC) .RC 文件找不到 winres.h 文件
- python - 像在Mysql中一样删除Clickhouse中的一些数据
- visual-studio - Visual Studio 2019 未更新/删除服务引用
- mysql - 在mysqldump中输入文件路径和日期时出现的错误如何解决?
- javascript - Highchart极坐标/面积图径向渐变