10
A
回答
19
http://msdn.microsoft.com/en-us/library/b0zbh7b6.aspx
此方法使用Array.Sort,它使用QuickSort算法。此實現執行不穩定的排序;也就是說,如果兩個元素相等,他們的順序可能不會被保留。相反,穩定的排序保留了相同元素的順序。
平均而言,此方法是O(n log n)操作,其中n是Count;在最壞的情況下,它是一個O(n^2)操作。
5
平均來說,此方法是一個爲O(n log n)的操作,其中n是計數;在最壞的情況下,它是一個O(n^2)操作。
這是因爲它使用Quicksort。雖然這是典型的爲O(n log n)的,as mentioned on Wikipedia 「快速排序通常更快的是在實踐中比其他爲O(n log n)的算法」
0
最好的也可以是漸進是O(nlogn)
2
添加從近期除了MSDN關於這一主題的一些信息,框架4.5,List.Sort方法取決於元素和分區的數量採用的是不同的排序策略。
該方法使用如下應用 內省排序Array.sort方法:
- 如果分區大小是少於16個元素,它使用了一個插入 排序算法。
- 如果分區數超過2 * LogN,其中N 是輸入數組的範圍,它使用Heapsort算法。
- 否則,它使用Quicksort算法。
此實現執行 不穩定排序;也就是說,如果兩個元素相同,則它們的訂單 可能不會保留。相反,穩定的排序保留了相同元素的順序 。
平均而言,此方法是O(n log n) 操作,其中n是Count;在最壞的情況下,它是一個O(n^2) 操作。
相關問題
- 1. 什麼是.NET時間序列庫?
- 2. 是什麼時間
- 3. 爲什麼list.sort不使用可選API
- 4. 爲什麼「return list.sort()」返回None,而不是列表?
- 5. std :: list.sort()
- 6. 這是什麼時間戳?
- 7. 什麼是UTC時間
- 8. 它是什麼時間戳?
- 9. requestAnimationFrame:什麼是時間戳?
- 10. 這是什麼時間戳?
- 11. 什麼是運行時間?
- 12. 什麼是.Net RxTx
- 13. .NET:什麼是WPF?
- 14. 什麼是最佳的計時器間隔? .NET Windows服務
- 15. 在C++ .net中使用加號等號是什麼時間戳
- 16. 什麼是.NET架構和什麼是.NET框架?
- 17. 什麼是陳舊時間間隔?
- 18. 什麼是android GestureDetector長時間超時?
- 19. 什麼是蟒蛇劃時代時間
- 20. 什麼是.NET框架
- 21. 什麼是Crystal Reports for .NET?
- 22. 什麼是.NET服務?
- 23. 什麼是從C到.net
- 24. 什麼是.NET Control.Margin屬性?
- 25. 什麼是「.Net身份」?
- 26. 什麼是PREMERGED dll in .net
- 27. 什麼是.net中的AutoClass?
- 28. 什麼是每個.NET類
- 29. 什麼是.NET RIA服務?
- 30. 什麼是RevertToSelf()? - C#.net
您的意思是'List.Sort',或'List .Sort'? –
2012-03-08 02:37:27
列表 .sort抱歉 –
2012-03-08 02:37:58