[英]Which sorting algorithm is used by .net in IComparer
當我們在類中實現IComparer
時,有沒有人知道.net使用了哪種排序算法?
QuickSort似乎就是這樣。
IComparer的文檔說
此接口與Array.Sort和Array.BinarySearch方法結合使用。
Array.Sort文檔說
此方法使用QuickSort算法。 此實現執行不穩定的排序; 也就是說,如果兩個元素相等,則可能不會保留它們的順序。 相反,穩定的排序保留了相等元素的順序。
根據MSDN ,.NET使用QuickSort。 順便說一句,該方法絕對不依賴於比較器(只要它是基於比較的),為什么.NET因此使用不同的方法取決於您是否提供自定義比較器?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.