欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python与算法:算法的时间对比分析

程序员文章站 2022-06-03 13:27:13
...
算法时间的对比
A算法的时间开销为100n^3,B的算法开销为0.5*2^n,问题规模为多大的时候B算法的更快?
两种方法,
一种是求解:
0.5*2^n<100n^3
得到的n的值就是满足条件的规模
另一种是画图:
可以比较清晰的表明随着规模增加,时间的消耗程度
# 计算可得,在小于20的时候,B算法较快
target_num=[]
for i in range(100):
    if 0.5*2**i<100*i**3:
        target_num.append(i)
print(target_num)
import matplotlib.pyplot as plt
x=list(range(22))
y1=[0.5*2**i for i in x]
y2=[100*i**3 for i in x]
plt.plot(x,y1,color='red')
plt.plot(x,y2,color='green')
plt.legend(["A: 0.5*2**i", "B: 100*i**3"])
plt.show()

python与算法:算法的时间对比分析

python与算法:算法的时间对比分析