【问题标题】:Clear description of TimsortTimsort 的清晰描述
【发布时间】:2012-08-12 04:33:42
【问题描述】:

我一直在谷歌上搜索并阅读 Wikipedia 上的 Timsort 和其他资源。 然而,我对 Timsort 在做什么并没有明确的想法。 谁能描述一下这个算法,或者给我一些包含清晰描述的文档?

【问题讨论】:

  • 也可以在这里查看 timsort 的实现:svn.python.org/projects/python/trunk/Objects/listobject.c
  • 我已经看到了,但我不是很清楚! :(
  • @programmingIsFun:您说您已阅读 Tim Peter 的解释和 Wikipedia 条目,但您并不清楚。你能把它分解成更具体的问题吗?
  • @BurhanKhalid:我投了反对票,因为“我就是不明白”这样的问题没有建设性。他本质上是在要求一个有针对性的教程,但几乎没有提供关于他做什么了解的信息。我认为对这个问题的任何有用答案都将过于具体到 OP 目前对计算机科学的理解。我还认为一个有用的答案最终会是章节长度描述,因为网络上较短的描述是不够的。
  • 不幸的是,我认为这可能是一种语言障碍 :( 没有什么可以做的。

标签: python algorithm sorting timsort


【解决方案1】:

Timsort 算法是一种合并排序算法,专门设计用于对已经部分排序的数据列表进行排序。它是一种稳定的排序,这意味着它保留了彼此相等的元素的相对顺序。

算法首先将数据列表分成两半。然后,它使用合并排序算法将两半合并在一起,以创建一个新的排序列表。重复此过程,直到对数据列表进行排序。

Timsort 算法在以下文档中有更详细的描述:

https://en.wikipedia.org/wiki/Timsort

【讨论】:

    猜你喜欢
    • 2010-12-04
    • 1970-01-01
    • 1970-01-01
    • 2011-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-08
    • 2010-10-09
    相关资源
    最近更新 更多