重金悬赏,求大佬们帮忙解析下数据结构与算法中的 时间复杂度 到底是怎么算的??最好能给出步骤和例子!在此感激

上传的附件
你的回答被采纳后将获得: 15点积分 (将会扣除手续费1点积分。)

keyboard_arrow_left上一篇 : 自学Python语言,是看书好还是看视频好呢? 现在写Windows驱动开发还有活路么? : 下一篇keyboard_arrow_right

4个回答

OrdinAry
2019-01-29 20:19:00

就是简单地计算下最大次数之类的

Gentleman
2019-01-30 10:04:15

求解算法的时间复杂度的具体步骤是:

  • 找出算法中的基本语句;算法中执行次数最多的那条语句就是基本语句,通常是最内层循环的循环体。

  • 计算基本语句的执行次数的数量级;只需计算基本语句执行次数的数量级,这就意味着只要保证基本语句执行次数的函数中的最高次幂正确即可,可以忽略所有低次幂和最高次幂的系数。这样能够简化算法分析,并且使注意力集中在最重要的一点上:增长率。

  • 用大Ο记号表示算法的时间性能。将基本语句执行次数的数量级放入大Ο记号中。

如果算法中包含嵌套的循环,则基本语句通常是最内层的循环体,如果算法中包含并列的循环,则将并列循环的时间复杂度相加。例如:

  1. for (i=1; i<=n; i++)
  2. x++;
  3. for (i=1; i<=n; i++)
  4. for (j=1; j<=n; j++)
  5. x++;

第一个for循环的时间复杂度为Ο(n),第二个for循环的时间复杂度为Ο(n2),则整个算法的时间复杂度为Ο(n+n2)=Ο(n2)。

nouveau
2019-02-01 18:10:15

计算执行最长次数?

Withdrawn
2019-02-09 11:42:56

结贴啦~

精彩评论

eject