01——字符串反转

Posted mailong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了01——字符串反转相关的知识,希望对你有一定的参考价值。

第一种:使用分片,使用字符串、列表

result = s[::-1]

 

第二种:使用列表的reverse方法,适用于列表

li =[b, c, f, 4, 5, 6]
a = list(reversed(li))
print (a)
输出:
[6, 5, 4, f, c, b]

第三种:使用reduce

result = reduce(lambda x,y:y+x,s)                    #不认识,先记着

第四种:使用递归函数

def func(s):                        #此处使用递归,不断把第一个字符,通过拼接的方式加到分片字符串后面,而分片字符串是将函数实参的第一个字符丢弃
    if len(s) <1:
        return s
    return func(s[1:])+s[0]
result = func(s)

第五种:使用栈

def func(s):
    l = list(s) #模拟全部入栈
    result = ""
    while len(l)>0:
        result += l.pop() #模拟出栈
    return result
result = func(s)

第六种:for循环

def func(s):
    result = ""
    max_index = len(s)-1
    for index,value in enumerate(s):
        result += s[max_index-index]
    return result
result = func(s)

 

以上是关于01——字符串反转的主要内容,如果未能解决你的问题,请参考以下文章

使用 C++ 反转句子中的每个单词需要对我的代码片段进行代码优化

如何在 BackStack 上反转片段动画?

Python 中的反转字符串:reversed()切片等

2022&2023华为OD机试 - 单词反转 2(Python)

华为OD机试真题Java实现单词反转真题+解题思路+代码(2022&2023)

华为OD机试 - 单词反转(Python)| 真题含思路