对或错:对于足够大的 n,O(n^3) 算法将比 O(n^4) 算法运行得更快



我对如何解决这个问题有点困惑。 我的直觉是,在绘制 n^3 和 n^4 时,该语句是正确的 但是,当应用常量(例如 100n^3(时,该语句为 false。 我怎么会想到这个问题?

如果他们使用非正式定义(这真的是大Theta(,那么答案显然是肯定的。

如果他们使用正式的定义,那么答案是否定的。 原因是说算法O(f(n))意味着您可以为所有足够大的n生成形式c f(n)上限。 所以合并排序是一种O(n^4)算法,而冒泡排序是O(n^3)。 (不是您可以放置的最佳边界,但两个边界都有效。然而对于大型n,合并排序运行得更快。

最新更新