у меня была представление о новом алгоритме сортировки, который делится и побеждает, принимая случайный индекс и разделил массив на два отдельных массива. < /p>
Но я не понимаю, почему эта сортировка Алгоритм работа? Это на самом деле работает, но это очень медленно, может кто -нибудь дать мне, пожалуйста, несколько намеков, как улучшить производительность этого алгоритма и, возможно, объяснить, почему и как это работает? (важная часть - это метод сортировки.) < /p>
class Program
{
static Random random = new Random();
public static void Main()
{
int[] array = GenerateRandomArray(101);
int[] sortedArray = Sort(array);
var sortedByLinq = array.OrderBy(x => x).ToArray();
while (!sortedArray.SequenceEqual(sortedByLinq))
{
sortedArray = Sort(sortedArray);
foreach (var item in sortedArray)
{
Console.Write(item + ",");
}
Console.WriteLine("next");
}
}
static int[] Sort(int[] array)
{
var length = array.Length;
if (length == 1)
{
return array;
}
if (length == 2)
{
var rigthorder = array[0]
Подробнее здесь: https://stackoverflow.com/questions/794 ... imilar-alg
Как повысить производительность этого алгоритма сортировки? Есть ли здесь аналогичный алгоритм? ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение