目录
01 | 算法基础概念
02 | 查找
03 | 列表排序
01 | 算法基础概念
1.算法概念
算法(Algorithm):一个计算过程,解决问题的方法
程序=数据结构+算法
2.时间复杂度
评估算法运行效率`# 不同算法运行效率不同 print('Hello World') for i in range(n): print('Hello World') for i in range(n): for j in range(n): print('Hello World')
3.空间复杂度
评估算法内存占用大小
4.递归
①递归两个特点:
-调⽤用⾃自身
-结束条件
②递归实例——汉诺塔问题
-大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。
-大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。
-在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。
-64根柱子移动完毕之日,就是世界毁灭之时。
n个盘⼦子时:
-把n-1个圆盘从A经过C移动到B
-把第n个圆盘从A移动到C
-把n-1个⼩小圆盘从B经过A移动到C
def hanoi (n,a