官网翻译:http://svn.python.org/projects/python/trunk/Objects/listsort.txt
介绍
这描述了一个自适应的、稳定的、自然的合并,称为timsort(嘿,我赢得了它)。它在许多类型的部分有序数组中具有超自然的性能(小于lg(N!)的比较需要,并且很少有N-1),但是和Python之前的高度调优的samplesort混合在随机数组中一样快。
简单地说,主要的例行程序在数组上来回移动一次,从左到右,交替地标识下一个运行,然后将其合并到前面的运行“智能”。其他一切都是速度的复杂性,以及一些来之不易的内存效率度量。
与Python的Samplesort Hybrid进行比较
- timsort需要一个包含多达N//2指针的临时数组,这意味着在32位的boxes上有2*N的额外字节。在对随机数据进行排序时,可以期望它需要一个t