0

以下 - 插入排序、选择排序、合并排序、基数排序的复杂性并解释哪一种是最好的排序算法,为什么?

4

1 回答 1

0

我不相信“最佳”排序算法。这取决于你想做什么。例如,冒泡排序真的很容易实现,如果你只是想要一种快速而肮脏的方式来对短数组进行排序,那将是最好的。另一方面,对于较大的数组,时间复杂度将真正发挥作用,您会注意到相当大的运行时差异。如果您真的重视记忆,那么您可能想要评估这些的空间复杂性。

所以排序答案是:恕我直言,没有最好的排序算法。我将留下下表供您自己评估要使用的内容。

Sorting AlgorithmAvg Time ComplextitySpace Complexity
Quicksort      O(nlog(n))      O(log(n))      
Mergesort      O(nlog(n))      O(n)      
Insertionsort      O(n^2)      O(1)      
Selectionsort      O(n^2)      O(1)      
Radixsort      O(nk)      O(n+k)      

于 2016-01-17T20:34:19.193 回答