python 递归 反转字符串

一道算法题

string='1234567890'
def Reverse(strings):
    if len(strings)==2:
        return  strings[1]+strings[0]
    else:
        return strings[-1]+Reverse(strings[:-1])
print(Reverse(string))

实际上 递归就是不断把问题   化解成最简单的,最低层次的,并逐一返回,把返回值拼接

 

总结 递归三要素:

  1.基本逻辑(最基础的逻辑)

  2.问题的不断分化

  3.返回值(有返回的递归 需要 不断的把返回  拼接 成最终答案 )

  


所以如何写一个递归:

  1.分析这个问题最简单的情况

     2.找出基本逻辑

  3.找出返回值,( 有返回值情况 )

原文地址:https://www.cnblogs.com/YoungElder/p/8605062.html