首页 > 其他 > 详细

1.时间复杂度与空间复杂度分析

时间:2019-11-25 21:10:01      阅读:81      评论:0      收藏:0      [点我收藏+]

1.时间复杂度分析

  时间复杂度通常用大O表示法,所有代码的执行时间 T(n) 与每行代码的执行次数 n 成正比,即

  技术分享图片

 它表示代码执行时间随数据规模增长的变化趋势,也叫渐进时间复杂度,简称时间复杂度。

 常见时间复杂度量级有O(1),O(log(n)),O(n),O(nlog(n)),O(n2),O(n3),O(2n),O(n!),其中O(2n),O(n!)为非多项式量级,剩余的为多项式量级。

 时间复杂度分析法则:

  a.只关注循环次数最多的那一段代码

  b.总复杂度等于量级最大的那段代码的时间复杂度

  c.嵌套代码的复杂度等于嵌套内外代码复杂度的乘积

 时间复杂度有最好时间复杂度,最差时间复杂度,平均时间复杂度,均摊时间复杂度,一般用平均时间复杂度来考量。

2.空间复杂度分析

  类比时间复杂度,空间复杂度全称渐进空间复杂度,表示空间随数据规模的增长的变化趋势。

  常见空间复杂度有O(1),O(n), O(n2)

  注意点:空间复杂度指的是操作数据时额外申请的空间,比如一个栈存储了n个数据,但是栈的空间复杂度为O(1),因为进栈出栈时都只操作栈顶元素,只需申请一个临时变量。

 

 

1.时间复杂度与空间复杂度分析

原文:https://www.cnblogs.com/quxiangxiangtiange/p/11930274.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!