如何在Visual C#中轻松地从最大数组到最小数组排序?

如何在Visual C#中轻松地从最大数组到最小数组排序?,c#,arrays,C#,Arrays,我有一个小整数数组。我想将数组从最大到最小重新排序。有什么方法可以做到这一点吗?您可以使用数组排序&反向: Array.Sort(array); Array.Reverse(array); 例如: [Test] public void Test() { var array = new[] { 1, 3, 2 }; Array.Sort(array); Array.Reverse(array); CollectionAssert.AreEquivalent(ne

我有一个小整数数组。我想将数组从最大到最小重新排序。有什么方法可以做到这一点吗?

您可以使用
数组
排序
&
反向

Array.Sort(array);
Array.Reverse(array);
例如:

[Test]
public void Test()
{
    var array = new[] { 1, 3, 2 };
    Array.Sort(array);
    Array.Reverse(array);

    CollectionAssert.AreEquivalent(new[] { 3, 2, 1 }, array);
}
您可以使用:

就复杂性而言:

平均而言,此方法是一个O(n)log n) 操作,其中n是 阵列;在最坏的情况下,它是一个O(n ^2)操作


你可以试试这样的

int[] ints = new int[] {1, 2, 3, 4, 1, 2, 3};
var sorted = ints.OrderBy(i => i);

位于

和从大到小的顺序:ints.OrderByDescending(i=>i);
int[] ints = new int[] {1, 2, 3, 4, 1, 2, 3};
var sorted = ints.OrderBy(i => i);