python基础---递归函数

什么是递归函数:在函数中调用自身的函数叫递归函数。

递归函数最大递归深度是997或998----是python内存角度自己设的限制。

注:如果递归次数太多,就不适合使用递归来解决问题。

递归的缺点: 占内存。

递归的优点:会让代码变的简单。

利用递归函数找二分法
def find(l,aim,start = 0,end = None):
    end = len(l) if end is None else end
    mid_index = (end - start)//2 + start
    if start <= end:
        if l[mid_index] < aim:
            return find(l,aim,start = mid_index+1,end = end)
        elif l[mid_index] > aim:
            return find(l,aim,start = start,end = mid_index-1)
        else:
            return mid_index
    else:
        return '找不到这个值'
ret = find(l,55)
print(ret)
利用递归函数找二分法

 

posted @ 2018-01-08 15:56  liang哥哥  阅读(100)  评论(0编辑  收藏  举报