根据增长顺序对断言进行排序?
Order assertions according to order of growth?
所以,我有一个我应该做的问题,我应该根据增长顺序对以下断言进行排序
2nlogn
0.000001n^3
1983n^2 + n
n + 456
3^n + 5n
而且我不知道该怎么做。我应该以 2nlogn <= n + 456 <= 等方式组织它们....
我不是在寻找答案 - 我只是需要一些关于如何做到这一点的建议。我知道增长的顺序 table 但这对我没有帮助。
如果您知道增长的顺序 table,基本上就是这样!
另一件需要知道的重要事情是系数和低阶项并不重要。例如,
3n^2 ~ n^2 > 1000n ~ n
如果这很难理解,想象一下当 n
变得非常大时会发生什么。 n^2
随着n
的增加而快速增长,而1000n
每增加1只增加1000n
。到n=1000
时,然后n^2 = 1000n
,随着 n
增加更多,n^2
超过 1000n
。
因此,对于像 n^2 + 1000n
这样的任何函数,将其拆分为不同的项并加在一起(乘法是不同的,例如 n*log(n)
不同于 n
或 log(n)
).您可以忽略除最大项以外的所有项,在本例中为 n^2
。执行此操作并去除系数后,只需使用增长顺序 table 即可获得解决方案!
https://en.wikipedia.org/wiki/Big_O_notation#Orders_of_common_functions
所以,我有一个我应该做的问题,我应该根据增长顺序对以下断言进行排序
2nlogn
0.000001n^3
1983n^2 + n
n + 456
3^n + 5n
而且我不知道该怎么做。我应该以 2nlogn <= n + 456 <= 等方式组织它们....
我不是在寻找答案 - 我只是需要一些关于如何做到这一点的建议。我知道增长的顺序 table 但这对我没有帮助。
如果您知道增长的顺序 table,基本上就是这样!
另一件需要知道的重要事情是系数和低阶项并不重要。例如,
3n^2 ~ n^2 > 1000n ~ n
如果这很难理解,想象一下当 n
变得非常大时会发生什么。 n^2
随着n
的增加而快速增长,而1000n
每增加1只增加1000n
。到n=1000
时,然后n^2 = 1000n
,随着 n
增加更多,n^2
超过 1000n
。
因此,对于像 n^2 + 1000n
这样的任何函数,将其拆分为不同的项并加在一起(乘法是不同的,例如 n*log(n)
不同于 n
或 log(n)
).您可以忽略除最大项以外的所有项,在本例中为 n^2
。执行此操作并去除系数后,只需使用增长顺序 table 即可获得解决方案!
https://en.wikipedia.org/wiki/Big_O_notation#Orders_of_common_functions