首页 > 其他 > 详细

4-8日 递归和二分查找

时间:2018-04-11 21:08:36      阅读:162      评论:0      收藏:0      [点我收藏+]

1,递归函数

在函数中调用函数本身自己。执行一次开辟一个空间,python对你的内存有一个保护机制,默认只能递归到998层。

技术分享图片
def func(n):
    n += 1
    print(n)
    func(n)
func(0)
View Code

 

 

 

2,二分查找

二分查找前提是有序且唯一的数字列表。

li = [1,21,30,32,44,55,56,433,]
def search(num,l,start=None,end=None):
    start = start if start else 0
    end = end if end else len(l) - 1
    mid = (end - start)//2 + start
    if start > end:
        return None
    elif l[mid] > num :
        return search(num,l,start,mid-1)
    elif l[mid] < num:
        return search(num,l,mid+1,end)
    elif l[mid] == num:
        return mid
print(search(44,li))

 

4-8日 递归和二分查找

原文:https://www.cnblogs.com/yzxing/p/8747166.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!