【发布时间】:2020-02-17 17:13:59
【问题描述】:
试图理解我理解的渐近符号用于描述算法的性能。我是否正确地说存在最坏、最好和平均的情况?例如,对于以下代码,Big-O 表示法的平均渐近运行时间是多少?
for (int i = 0; i < size; i++)
{
printf("%d\n", i);
}
for (int i = 0; i < size; i++)
{
for (int j = 0; j < size; j++)
{
printf("%d\n", i + j);
}
}
会是 O(n^2) 吗?
【问题讨论】:
-
假设你的意思是时间复杂度是
size的函数,那么区分最佳情况/最坏情况/平均情况是没有意义的,因为只有一个可能的输入算法中任何给定的size。
标签: c++ performance big-o complexity-theory