这里写自定义目录标题
时间复杂度基本计算规则
- 基本操作,即只有常数项,为O(1)
- 顺序结构,时间复杂度按加法计算
- 循环结构,时间复杂度按乘法计算
- 分支结构,时间复杂度取最大值
- 判断一个算法的效果时,往往只需要关注操作数量的最高次项,其他次要项和常数项可以忽略
- 在没有特殊说明时,我们所分析的算法时间复杂度都是指最坏时间复杂度
举例:
for a in range (0, n):
for b in range(0, n):
c = 1000 - a -b # 与下边的if是顺序结构
if a**2 + b**2 == c**2:
print("{0}, {1}, {2}".format(a,b,c))
复杂度为:T(n)=nn(1+max(1,0))=n^2*2=O(n ^2)