2009-11-28 2 views

ответ

2

Вы можете сделать это с помощью ArraySort & Reverse:

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); 
} 
+0

http://msdn.microsoft.com/ en-us/library/system.array.sort% 28VS.71% 29.aspx и http://msdn.microsoft.com/en-us/library/system.array.reverse%28VS.71%29.aspx –

10

Вы можете использовать Array.Sort:

int[] array = new[] { 1, 3, 2 }; 
Array.Sort(array, (x, y) => y.CompareTo(x)); 

Насколько сложность связана:

В среднем этот метод является О (п войти п) операции, где п есть длина массива; в худшем случае это O (п ^ 2) операция

3

Вы можете попробовать что-то вроде этого

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

Найдено в Sort array of items using OrderBy<>

+0

Максимальный размер: ints.OrderByDescending (i => i); – Elisha

Смежные вопросы

 Смежные вопросы