所以这个例子在这个网站上很明显,但如果你有这个例子: N,平均秒:(1,000:2.7)(2,000:3.04)(4,000:3.6)(8,000:3.7)(16,000:4)? N每次加倍(2 * N),平均时间开始趋于平稳。我可以通过查看下面的例子(O(logN))来猜测,但有人可以澄清你将如何计算问题吗?
O(1):称为常数复杂度
1项:1秒
10项:1秒
100项:1秒
项目数仍然增加10倍,但O(1)的比例因子始终为1.
O(log n):称为对数复杂度
1项:1秒 10项:2秒 100项:3秒 1000项:4秒
答案 0 :(得分:1)
您可以根据对数曲线拟合进行回归分析。您可以首先绘制数据以获得可视化确认。
Wolfram Alpha中的log fit
会产生:
这表明你是对的,增长似乎是对数的(对于提供的数据)。
然而,请注意,时间测量不等于实际复杂性分析,这是一种形式证明,而不是适合经验数据的曲线(由于多种原因可能会扭曲)。