![802d3ceb538b9949e45ce89ab3a5a684.png](https://i-blog.csdnimg.cn/blog_migrate/2a60d3790a9369381f3159abaf84f020.png)
使用递归清除字符串中的" "和/t
![ec3840eecb0a9cf9fe0d3f62851b31fa.png](https://i-blog.csdnimg.cn/blog_migrate/3b716de1ef39f7545d7790f6414600c2.jpeg)
def remove(string):
# Base Case
if not string:
return ""
# Recursive Case
if string[0] == "t" or string[0] == " ":
return remove(string[1:])
else:
return string[0] + remove(string[1:])
![24bf8370a646715db79f4d727068e654.png](https://i-blog.csdnimg.cn/blog_migrate/f508a99e89814a2da6fbd0903c659bd2.jpeg)
使用递归清除字符串中的重复字符
![6bd93b7095f66e4014fb91d16eda3dcd.png](https://i-blog.csdnimg.cn/blog_migrate/b19ccd4aa1a1fcf137c66d774882a71a.png)
def removeDuplicates(string):
# Base Case1
if not string:
return ""
# Base Case2
elif len(string) == 1:
return string
# Recursive Case1
elif string[0] == string[1]:
return removeDuplicates(string[1:])
# Recursive Case2
return string[0] + removeDuplicates(string[1:])
使用递归拼接两个字符串并排序
![7a6bd1a1306afe7e6b9b9284abc3d335.png](https://i-blog.csdnimg.cn/blog_migrate/510e7df1fde98721d83dcc44b92b13fe.png)
def merge(string1, string2) :
# Base Case1
if string1 == "" :
if string2 == "" :
return ""
return string2
# Base Case2
elif string2 == "" :
return string1
# Recursive Case1
elif string1[0] > string2[0] :
return string2[0] + merge(string1, string2[1:])
# Recursive Case2
return string1[0] + merge(string1[1:], string2)
![ac77b4b146cbe712e43f5186c326d1b9.png](https://i-blog.csdnimg.cn/blog_migrate/40f49f06420cf6ca17b54bf31e7ad95c.jpeg)
使用递归求字符串的长度
def recursiveLength(testVariable) :
# Write your code here
if testVariable == '':
return 0
else:
return 1 + recursiveLength(testVariable[1:])
![da6ec478770a66ca407bf5220f289614.png](https://i-blog.csdnimg.cn/blog_migrate/982b844c54bdaa5bbbd9422ee39019c5.jpeg)
使用递归计算字符串中所有数字的和
![6f8ad445f7b5169c8ad63dea87a38e3b.png](https://i-blog.csdnimg.cn/blog_migrate/b46e045a961a0b9ed00f28e994b00eb3.png)
def sumDigits(testVariable):
# Write your code here
# base case
if testVariable == '': return 0
else:
return int(testVariable[0]) + sumDigits(testVariable[1:])
![d5582666cb299da9bb62a62a36143090.png](https://i-blog.csdnimg.cn/blog_migrate/cb135ed4d56b67e2948a765f40df4f10.jpeg)
使用递归判断字符转是否为回文
![043d308ce1564c997afdeb943627f27b.png](https://i-blog.csdnimg.cn/blog_migrate/7471920506063ac202a35cb4ba9e2542.png)
def isPalindrome(testVariable) :
# Write your code here
if len(testVariable)<=1:
return True
else:
if testVariable[0] == testVariable[-1]:
return isPalindrome(testVariable[1:len(testVariable)-1])
else: return False
![eaa56a9f693b70de134bd2c5c3d3bc34.png](https://i-blog.csdnimg.cn/blog_migrate/d9d727119d229504fdc20f19f83456b1.jpeg)
![a1b9a93ae0338f4a92659f947b46d2aa.png](https://i-blog.csdnimg.cn/blog_migrate/95d132dad0d72d38f518834b32b4455b.jpeg)