1,递归函数
在函数中调用函数本身自己。执行一次开辟一个空间,python对你的内存有一个保护机制,默认只能递归到998层。
def func(n): n += 1 print(n) func(n) func(0)
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))