2021-02-20

1546-王同学

发表文章数:32

首页 » 数据结构 » 正文

时间复杂度:

1、import time

start_time = time.time()

for a in range(0, 1001):
for b in range(0, 1001):
for c in range(0, 1001):
if a2 + b2 == c**2 and a+b+c == 1000:
print(“a, b, c: %d, %d, %d” % (a, b, c))

end_time = time.time()
print(“elapsed: %f” % (end_time – start_time))
print(“complete!”)

T=1000*1000*1000*2
T=N**3*2
T(n)=n**3*2
T(n)=n**3

2、import time

start_time = time.time()

注意是两重循环

for a in range(0, 1001):
for b in range(0, 1001-a):
c = 1000 – a – b
if a2 + b2 == c**2:
print(“a, b, c: %d, %d, %d” % (a, b, c))

end_time = time.time()
print(“elapsed: %f” % (end_time – start_time))
print(“complete!”)

时间复杂度的几条基本计算规则
基本操作,即只有常数项,认为其时间复杂度为O(1)
顺序结构,时间复杂度按加法进行计算
循环结构,时间复杂度按乘法进行计算
分支结构,时间复杂度取最大值
判断一个算法的效率时,往往只需要关注操作数量的最高次项,其它次要项和常数项可以忽略
在没有特殊说明时,我们所分析的算法的时间复杂度都是指最坏时间复杂度

O(1) < O(logn) < O(n) < O(nlogn) < O(n2) < O(n3) < O(2n) < O(n!) < O(nn)

2021-02-20

未经允许不得转载:作者:1546-王同学, 转载或复制请以 超链接形式 并注明出处 拜师资源博客
原文地址:《2021-02-20》 发布于2021-02-20

分享到:
赞(0) 打赏

评论 抢沙发

评论前必须登录!

  注册



长按图片转发给朋友

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

Vieu3.3主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录