Python编程题41--原地反转字符串

2022-01-08  本文已影响0人  wintests

题目

针对一个字符串,该字符串是以字符列表的形式存在,请编写一个函数,实现将字符串反转过来。

例如:

给定一个字符列表:["h", "e", "l", "l", "o"],返回结果:["o", "l", "l", "e", "h"]

给定一个字符列表:["h", "a", "n", "n", "a", "H"],返回结果:["H", "a", "n", "n", "a", "h"]

说明

  • 不允许使用其他的列表,只能在原列表上处理
  • 不允许使用编程语言的内置函数实现反转,也不允许对列表进行切片操作

实现思路1

代码实现1

def reverseString(s):
    left, right = 0, len(s) - 1
    while left < right:
        s[left], s[right] = s[right], s[left]
        left += 1
        right -= 1

实现思路2

代码实现2

def reverseString(s):
    for i in range(len(s) // 2):
        s[i], s[~i] = s[~i], s[i]

更多Python编程题,等你来挑战:Python编程题汇总(持续更新中……)

上一篇下一篇

猜你喜欢

热点阅读