时间复杂度的计算(时间复杂度和时间频度之间的关系)

  • Post author:
  • Post category:其他




时间复杂度的计算



1.什么是时间频度?

      时间频度是指算法中最基本的语句执行的次数叫做时间频度;



2.什么是时间复杂度?

     时间复杂度是指当需要处理数据的规模发生变化的时候,计算机计算次数的变化趋势叫做时间复杂度;(而且,我么你需要知道时间复杂度越低越好)
     
     那具体是什么意思呢?当时间复杂度为o(n)的时候(n代表需要处理的数据量),说明,计算机需要处理n次,随着n的增长,(语句的执行次数)呈线性增长;
     
     当时间为o(1)时,代表无论需要处理的数据量的多少,计算机的计算次数只有一次,此时为理想的时间复杂度,是所有人梦寐以求的算法;

     当时间复杂度为o(n^2)的时候,我们会发现,随着n(处理数据量)的增加,n^2是呈指数式增长的,说明语句的执行次数呈指数增长,众所周知,指数式增长是很快的,所以n越大,o(n^2)的算法的时间频度越高,o(n)相较于o(n^2)就比较好,比如当n为1000时,o(n)=1000,o(n^2)=1000000,由于时间复杂度小的算法好,由此可知,o(n)的算法比o(n^2)的算法要好;



3.时间复杂度如何计算?

     时间复杂度 = 时间频度(去掉低阶的项和常数项,以及最高次项的系数)
     例如  时间频度 f(n)= 2n^2+2 则时间复杂度为O(n^2)
     或    时间频度 f(n)= n^3 + 2n^2 + 3则时间复杂度为O(n^3)



版权声明:本文为linjunjieniubi原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。