【发布时间】:2014-07-31 15:53:23
【问题描述】:
如果一个时间复杂度为 O(nlogn) 的算法在一台计算机上在两秒内执行,那么一台快 100 倍的计算机执行同样的算法需要多长时间?是 2/100 秒吗?据我所知,大 o 表示法是输入大小的函数,与同一算法在不同计算机上的执行时间无关,对吗?
【问题讨论】:
-
这个问题无法回答。这取决于很多因素。一些例子是:RAM 是否也快 100 倍?算法使用IO吗?两台机器上的缓存大小是多少?算法是否针对“较慢”的机器进行了优化?
-
缺乏知识并不构成对收入者帖子投反对票的理由。它可能会使新手远离社区。在加入堆栈溢出之前,收入者应该知道什么没有官方门槛
标签: algorithm time big-o time-complexity