算法的时间复杂度取决于什么?

是问题的规模还是待处理数据的初态?还是两个都有呢?

算法的时间复杂度取决于问题的规模,待处理数据的初态。

一个语句的频度是指该语句在算法中被重复执行的次数。算法中所有语句的频度之和记为T(n),它是该算法问题规模n的函数,时间复杂度主要分析T(n)的数量级。算法中基本运算(最深层循环内的语句)的频度与Tn)同数量级,因此通常采用算法中基本运算的频度fn)来分析算法的时间复杂度3。

算法的时间复杂度记为:T(n)= O(fn))式中,О 的含义是T(n)的数量级,其严格的数学定义是:若T(n)和fn)是定义在正整数集合上的两个函数,则存在正常数C和n,使得当n≥no时,都满足0≤T(n)≤Cfn)。

算法的时间复杂度不仅依赖于问题的规模n,也取决于待输入数据的性质(如输入数据元素的初始状态)。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-04-12
两个都有。
算法的时间复杂度不仅与问题的规模有关,在同一个问题规模下,而且与输入数据有关。即与输入数据所有的可能取值范围、输入各种数据或数据集的概率有关。
第2个回答  2013-07-07
我认为大多取决与问题的规模和算法的优劣!
一般是计算循环的次数来觉得时间复杂度!本回答被网友采纳
第3个回答  2013-07-07
从算法中选取一种对于所研究的问题(或算法类型)来说是基本操作的原操作,以基本操作重复执行的次数作为算法时间复杂度的度量
第4个回答  2016-12-12
输出数据量,算法的优劣,输入数据量
相似回答