使用两个指针交换字符实现字符串翻转的函数
发布时间:2023-12-04 06:34:01
字符串翻转是指将一个字符串中的字符颠倒顺序,例如将字符串"hello"翻转为"olleh"。下面是一个使用两个指针交换字符来实现字符串翻转的函数:
def reverse_string(s):
# 将字符串转换为列表,方便操作
s = list(s)
# 定义两个指针,一个指向字符串头部,一个指向字符串尾部
left = 0
right = len(s) - 1
# 交换指针所指向的字符,并向中间移动指针,直到两指针相遇
while left < right:
s[left], s[right] = s[right], s[left]
left += 1
right -= 1
# 将列表转换为字符串并返回
return ''.join(s)
下面是一个使用例子:
s = "hello world" reversed_s = reverse_string(s) print(reversed_s)
输出结果为:
dlrow olleh
这个函数的基本思路是使用两个指针从字符串的两端向中间移动,同时交换两指针所指向的字符。通过不断交换字符,可以实现字符串的翻转操作。最后将列表转换为字符串并返回翻转后的字符串。
