人生苦短,我用python
str1 = "string"
1直接使用字符串切片功能逆转字符串
print ( str1[ : : - 1 ] )
2将字符串转换为列表使用reverse函数
str1_list = list ( str1)
str1_list. reverse( )
print ( '' . join( str1_list) )
3新建一个列表,从后往前添加元素
str1_list = [ ]
for i in range ( len ( str1) - 1 , - 1 , - 1 ) :
str1_list. append( str1[ i] )
print ( '' . join( str1_list) )
4借助于collections模块现成的方法extendleft
import collections
cd1 = collections. deque( str1)
cd2 = collections. deque( )
for char in cd1:
cd2. extendleft( char)
print ( '' . join( cd2) )
5递归实现
def rec ( string) :
if len ( string) != 1 :
rec( string[ 1 : ] )
print ( string[ 0 ] , end= '' )
rec( str1)
6借助基本的Swap操作,以中间为基准交换对称位置的字符
str_list = list ( str1)
len_str = len ( str_list)
i = 0
while i < len_str / 2 :
str_list[ i] , str_list[ len_str - i - 1 ] = str_list[ len_str - i - 1 ] , str_list[ i]
i += 1
print ( '' . join( str_list) )