递归是一种编程思想,应用场景;
1.在我们日常开发中,如果要遍历一个文件夹下所有的文件,通常会使用递归来实现
2.在后续的算法课程中,很多算法都离不开递归
函数内部自己调用自己
必须有出口
- def a(sum):
- if sum==1:
- return 1
- return sum+a(sum-1)
- print(a(3))
- def a(sum):
- if sum==1:
- return 1
- return sum**2+a(sum-1)
- print(a(4))
- def bubblesort(a):
- leght=len(a)
- while leght>0:
- for i in range(leght-1):
- key=a[i+1]
- a[i],a[i+1]=key,a[i]
- leght=leght-1
- return a
- a=[22,33,66,99,55,77,88]
- print(bubblesort(a))
3.2快排
- def quicksort(a):
- if len(a)<2:
- return a
- else:
- base=a[0]
- left=[i for i in a[1::] if i
- right=[i for i in a[1::] if i>base]
- return quicksort(left)+[base]+quicksort(right)
- a=[3,5,29,6,9,89,456,55]
- print(quicksort(a))
3.3选择
- def selectsort(a):
- s=len(a)
- for i in range(0,s):
- min=i
- for j in range(i+1,s):
- if a[min]>a[j]:
- min=j
- a[min],a[i]=a[i],a[min]
- return a
- a=[1,5,3,6,9,7,5,89,45,67]
- print(selectsort(a))
( ̄▽ ̄)~*------ ٩(๑❛ᴗ❛๑)۶谢谢阅读!!!!!!!!!!!!!