立方根在哪里落入增长顺序?

时间:2016-10-11 18:46:36

标签: algorithm asymptotic-complexity

我正在攻读考试并查看增长顺序示例,我想到了一个有趣的问题。

假设我有以下列表代表with tf.Session() as sess: x = tf.constant([0.3,0.7,1.2,1.7]) y = tf.constant([0.2,0.5,1.0,2.9]) z = tf_mod(x,y) gr = tf.gradients(z, [x,y]) tf.initialize_all_variables().run() print(x.eval(), y.eval(),z.eval(), gr[0].eval(), gr[1].eval()) 运行时间。

  

3!,3,3n,n,log4n,n2,n3,n4,√nbig-O,³√nsquare root

现在如果我订购这些至少最好的,我会做以下事情:

  

3因为恒定   log4n因为对数略大   √n猜这里???
  ³√n猜这里???
  之后是n线性的   3n线性+常数>线性
  n ^ 2二次方   n ^ 3立方
  n ^ 4 4次幂
  3!阶乘总是最大的

我的根位置是否正确?如果不是他们会去哪里,为什么?这不是书中的作业问题。这是我想出来的,以澄清增长顺序中根的位置。

我通过电子邮件向我的导师发了同样的问题,我正在等待回复。做一些研究并没有让我得到一个具体的答案,即根据增长顺序,准分子简单的根词在哪里会下降。

任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:3)

sqrt(n)介于log4nn之间,你是对的。

注意平方根为n^(1/2),立方根为n^(1/3),因此立方根低于平方根。

此外,3!实际上是一个常数,因为它不依赖于n

答案 1 :(得分:1)

根只是倒置的指数,

sqrt(n)= n ^(1/2) cube_root(n)= n ^(1/3)

技术上(n)和(3n)的大O是相同的,因为常数不会影响大O