Recursive functions
definition: call the function itself in a function
Maximum recursion Depth: 997
To modify the maximum depth: Import SYS Print (Sys.setrecursionlimit (100000))
# Recursive example-seeking age def Age (N): if n = =1 :return , Else: return age (n-1) +2Print(age (4))
Binary search algorithm Simple version dichotomy method
L = [2,3,5,10,15,16,18,22,26,30,32,35,41,42,43,55,56,66,67,69,72,76,82,83,88]deffunc (L,aim): Mid= (Len (l)-1)//2ifL:ifAim >L[mid]: func (L[mid+1:],aim)elifAim <L[mid]: func (L[:mid],aim)elifAim = =L[mid]:Print("Bingo", mid)Else: Print('I can't find them .') func (L,66) func (L,6) The basic version of the dichotomy method
two-way version of the upgrade
defSearch (num,l,start=none,end=None): Start= StartifStartElse0 End= EndifEnd isNoneElseLen (L)-1Mid= (End-start)//2 +StartifStart >End:returnNoneelifL[mid] >Num:returnSearch (num,l,start,mid-1) elifL[mid] <Num:returnSearch (num,l,mid+1, end)elifL[mid] = =Num:returnMid binary Algorithm Ultimate Edition
recursive function and binary search algorithm