2014-11-04 87 views
-2

我应该如何开始解决以下问题?基于Θ(nlogn)的计算性能

木块需要20秒来块60块木头,但运行时间渐近性能Θ(nlogn)的算法。木块需要多少时间来块5000块木头?

我不确定该如何解决这个问题,因为我不知道关于Θ(g(n))的功能g(n)的任何信息。

它来自我的C++类练习页下的数组,搜索和排序章节。

+0

我能说的最好的“可能超过15000,但也许不是”。这个问题出现在哪里?你有链接吗?这似乎是一个严重的问题;需要一些背景来看看提问者是否想要一个“挥手”的答案或一个严格的答案。 – anatolyg 2014-11-04 17:36:45

+0

写这个问题的人似乎并不了解big-O(或bigta)符号。 – interjay 2014-11-04 17:38:03

+1

@interjay或土拨鼠。 – beaker 2014-11-04 17:41:50

回答

0

什么都不能从问题中的数据中确定。

“渐近性能”的概念和指定Θ(nlogn)的算法运行时间大于某个未知常数(通常由N表示)。那就是:

存在常数Nc1c2这样比N更大的每个n,运行时间T(n)满足c1 * n * log(n) < T(n) < c2 * n * log(n)

但是,您不知道N的值,所以您不知道60或5000是否大于N