【问题标题】:What is the best description of the run time complexity of insertion sort插入排序的运行时间复杂度的最佳描述是什么
【发布时间】:2013-02-24 22:16:34
【问题描述】:

我理解它是二次的,但我正在参加离散数学的多项选择练习测试,只有四个选项是:

a) 对数

b) 线性

c)线性的

d)多项式

【问题讨论】:

  • 是否符合上述任何描述?
  • 多项式就是答案。
  • 啊,如果我没记错的话,我想二次函数是二次多项式函数......谢谢......糟糕的问题 IMO

标签: algorithm complexity-theory big-o insertion


【解决方案1】:

a) 对数 = O(log n)

b) 线性 = O(n)

c) 线性 = O(n log n)

d) 多项式 = O(nk)

所以 O(n2) 将是多项式。

【讨论】:

    【解决方案2】:

    将新值插入到排序值的列表或树中是 O(log n)。

    使用直接排序列表最容易查看。假设您要插入 x。找到 [n/2] 处的值。如果这大于 x,则正确的位置位于左半边。如果 [n/2] 小于 x,则正确的位置位于右侧。重复,每次检查中间值。每一步都会将要检查的间隔大小减半,直到找到正确的值,从而为插入提供对数时间。

    插入树是类似的;必须遍历树到正确的节点位置,这需要遍历树的平均深度,与log n成正比

    【讨论】:

      猜你喜欢
      • 2013-11-18
      • 2021-05-30
      • 2012-09-12
      • 2021-03-05
      • 2011-09-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-06
      • 1970-01-01
      相关资源
      最近更新 更多