我有一个程序可以计算4个.txt文件的运行时间(以毫秒为单位)。然后我必须根据theta来计算加载的运行时间,并指定输入中n指的是什么。但是,就此而言,我仍然不完全理解大的theta符号或渐近符号。谁能给我一些指示?这些是文件的运行时:
文件加载时间
file1 18000ms
file2 48514ms
file3 121473ms
file4 622446ms
答案 0 :(得分:1)
没有通用的方法从经验运行时派生程序运行时的theta绑定。您可能会看到触发病态最坏情况的输入(例如,线性编程的单纯形算法在较窄的输入类别上降级为指数最坏情况时间)并且您无法知道趋势是否存在你看到的会持续更长时间。
如果要获得经验计算复杂度,合理的解决方案是获取数据,将其绘制在对数/对数轴上,并寻找最佳拟合线。这样做的原因是对数/对数图上的直线对应于多项式拟合,因此这将为您拥有的数据找到最佳拟合多项式。只要你记得你的答案只会和你提供的数据一样好,这是一个很好的方法来解决这个问题。