递归函数

# 构造递归函数,需要基例
# 基例不进行递归,否则递归就会无限循环执行
# 例如下面代码会报错

def reversed(s):
     return reversed(s[1:]) + s[0]
s = 'abcdef'
reversed(s)

正确写法如下:

def reversed(s):
    if s == "":
        return s
    return reversed(s[1:]) + s[0]
s = 'abcdef'
reversed(s)

或者

def reversed(s):
    if len(s) == 1:
        return s
    return reversed(s[1:]) + s[0]
s = 'abcdef'
reversed(s)

posted @ 2022-01-02 16:01  chliyiyu  阅读(45)  评论(0)    收藏  举报