排序数组最有效的方法

时间:2015-01-24 20:08:51

标签: algorithm sorting theory any

在任何语言中排序数组的最有效方法是什么? 最低的O()和P()。我发现shell排序是排序的最好方法之一,但有更快的东西吗?

1 个答案:

答案 0 :(得分:2)

简而言之:

Introsort和Timsort是现实世界中最常用的排序算法。

在Quicksort处于O(n ^ 2)的特定情况下,它们平均具有O(nlogn)复杂度,并且在最坏情况下使得它们优于QuickSort。 Introsort用于C和C ++ STL,Timsort用于Python和Java实现(至少用于对Java中的Objects数组进行排序)。

Shell排序在O(n(logn)^ 2)中稍慢但使用较少的内存,因此适用于嵌入式系统。有关详细信息,请参阅enter link description here