关于递归

来源:互联网 发布:网络整合营销4i原则 编辑:程序博客网 时间:2024/05/17 18:01

关于递归




以下代码片内容为递归实现斐波拉契数列。

# 以斐波拉契数列的计算为例,考察递归与循环的转化# 递归实现def create_num_list(NumListCurr,MaxNum):    if max(NumListCurr)>MaxNum: # 递归结束条件        return NumListCurr    else: # 递归条件        M = len(NumListCurr)        NumAdd = NumListCurr[M-2] + NumListCurr[M-1]        NumListCurr.extend([NumAdd]) # 预先进行的一系列操作,更新数据        create_num_list(NumListCurr, MaxNum) # 使用更新后的数据再次调用函数    return NumListCurr # 函数返回RecursionList = create_num_list([0,1],10)print('\n','RecursionList=','\n',RecursionList)# 循环实现CycleList = [0,1]MaxNum = 10while max(CycleList)<10:    M = len(CycleList)    NumAdd = CycleList[M-1] + CycleList[M-2]    CycleList.extend([NumAdd]) #将需要的数据在更新后保存下来print('\n','CycleList=','\n',CycleList)