答案 0 :(得分:6)
答案 1 :(得分:1)
Sort使用未经优化的快速排序,在最坏的情况下具有n * n的复杂性。我不知道orderby使用了什么,但我知道它不使用相同的方法,因为它是一个稳定的排序,不像array.sort
。
答案 2 :(得分:0)
答案 3 :(得分:0)
对我来说,我将使用Linq和IComparable(当这是排序的最多或唯一的方式)。在这种情况下,项目是TestSort: IComparable<TestSort>
var sorted = ll.OrderBy(item => item); // This automatically used age to compare, as it's defined in CompareTo
ll
可以是任何IEnumerable:List,Array等。
同样在CompareTo
你可以有多种比较方法...例如,你可以这样做:
public int CompareTo(TestSort other) {
return this.age != other.age ? this.age.CompareTo(other.age) : this.dateOfBirth.CompareTo(other.dateOfBirth);
}