是否存在使用复合函数计算的复杂度的算法? 假设我们有f属于O(n ^ 2)而g属于O(n)。在算法中有复杂度f(g(n)),女巫是O(n ^ 2)。
答案 0 :(得分:0)
我在现实生活中从未遇到过这种情况,但你可以想象这样的算法。例如,在运行时期间分析另一个算法的算法。例如,您可以使用不同的基于比较的排序算法,以及一个算法分析器,它存储所有比较完成,测量它们的时间,对它们进行排序,对它们进行一些统计等。如果第二个算法具有复杂性f(n)
在作为条目的比较次数中,排序算法具有g(n)
复杂度,然后在大小为n
的输入上运行排序算法分析,其总复杂度为f(g(n))
无论如何,这是一种诡计,因为n
和f(n)
显然g(n)
并不是同一件事。基本上在algo2
的输出上运行算法algo1
,其大小与其复杂性大致相同。