递归调用
递归调用:函数在调用的过程中,间接或直接调用函数本身。
1 def f1(): 2 print("递归调用") 3 f1() 4 f1() #会无限的执行。但是达到调用的最大次数就会保存停止
1 #定义阶段 2 def f1(): 3 print("递归调用") 4 f2() 5 6 7 def f2(): 8 print("我再调用f1") 9 f1() 10 #使用阶段 11 12 f1()
系统设置!!!没啥用。了解即可
1 import sys #系统模块 2 print(sys.getrecursionlimit()) 3 print(sys.setrecursionlimit(10000)) #没啥鸟用。。。。
1 def age(n): 2 if n == 1: 3 return 18 4 return age(n-1)+2 5 6 print(age(5)) 7 8 是结果 9 26
二分法
1 #函数定义阶段 2 feng = [1,2,3,4,5,6,12,23,24,34,45,77,88,99] 3 4 def search(find_ele,seq): 5 """二分法函数,判断执行""" 6 if len(seq) == 0: 7 print("not exists") 8 return 9 mid_index = len(seq)//2 10 mid_num = seq[mid_index] 11 print(mid_num) 12 13 if find_ele > mid_num : 14 seq = seq[mid_index+1:] 15 search(find_ele,seq) 16 elif find_ele < mid_num: 17 seq = seq[:mid_index] 18 search(find_ele,seq) 19 else: 20 print("find it") 21 def man(): 22 '''主函数,可以随意输入数字''' 23 print(feng) 24 find_ele = int(input("请输入》》》")) #这里要转换成数字哦,否则会报错的 25 seq = feng 26 search(find_ele,seq) 27 #函数执行阶段 28 man()

浙公网安备 33010602011771号