题目
编写递归函数实现字符串原地逆序反转。
输入格式:一行输入一个待反转的字符串。
输出格式:输出反转后的字符串内容,末尾换行。
数据范围与约定:字符串长度不超过 500。
思路与算法
1. 递归首尾收缩
函数接收索引 left 和 right,当 left >= right 时终止递归。
2. 列表转换
由于 Python 字符串不可变,反转过程通常将字符串转为字符列表进行交换。
完整程序
s1 = input().strip()
s2 = input().strip()
# 逐字符比对字典序大小
diff = 0
for c1, c2 in zip(s1, s2):
if c1 != c2:
diff = ord(c1) - ord(c2)
break
if diff == 0:
diff = len(s1) - len(s2)
if diff > 0:
print(1)
elif diff < 0:
print(-1)
else:
print(0)运行示例
输入:
abcd输出:
dcba