用Python反转字母
假设我们有一个字符串S,我们必须找到相反的字符串,其中所有非字母的字符都不会改变其位置,而所有字母都将其位置反转。因此,如果给定的字符串是“a-bC-dEf-ghIj”,则输出将是“j-Ih-gfE-dCba”
为了解决这个问题,我们将遵循以下步骤-
我们将使用正则表达式库解决此问题
如果S为空,则返回S
str:=空字符串,index1:=0,index2:=S–1的长度
而index1<S的长度
str:=str+S[index2]
将index2减少1,并将index1增加1
如果index2>=0并且S[index1]是字母,而S[index2]是字母
否则,如果S[index1]是字母,则将index2减1
否则,如果S[index1]不是字母,则str:=str+S[index1],将index1加1
否则将index2减少1,并将index1增加1
返回str
示例
让我们看下面的实现以更好地理解-
class Solution:
def reverseOnlyLetters(self, S):
if not S:
return S
str_= ""
index1 = 0
index2 = len(S)-1
while index1<len(S):
#print(index1,index2)
if index2>=0 and S[index1].isalpha() and S[index2].isalpha():
str_+=S[index2]
index2 -= 1
index1 += 1
elif S[index1].isalpha():
index2-=1
elif not S[index1].isalpha():
str_+=S[index1]
index1+=1
else:
index2 -= 1
index1 += 1
return str_
ob1 = Solution()print(ob1.reverseOnlyLetters("a-bC-dEf-ghIj"))输入值
"a-bC-dEf-ghIj"
输出结果
"j-Ih-gfE-dCba"
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短