На определенном этапе программа просто прекращает работу.
using System;
using System.Diagnostics;
class InsertionSort {
// Функция сортировки массива с использованием сортировки вставкой
void sort(int[] arr)
{
int n = arr.Length;
for (int i = 1; i < n; ++i) {
int key = arr[i];
int j = i - 1;
// Переместить элементы arr [0..i-1], которые больше, чем key, на одну позицию впереди их текущей позиции
while (j >= 0 && arr[j] > key) {
arr[j + 1] = arr[j];
j = j - 1;
}
arr[j + 1] = key;
}
}
// Функция для печати массива размера n
static void printArray(int[] arr)
{
int n = arr.Length;
for (int i = 0; i < n; ++i)
Console.Write(arr[i] + " ");
Console.Write("\n");
}
// Запуск кода
public static void Main()
{
Stopwatch sw = new Stopwatch();
int[] arr = new int[150000];
Random rd = new Random();
for(int i=0; i<arr.Length; ++i){
arr[i] = rd.Next(10,150001);
}
sw.Start();
Console.WriteLine("Given Array");
printArray(arr);
InsertionSort ob = new InsertionSort();
//ob.sort(arr, 0, arr.Length - 1);
ob.sort(arr);
Console.WriteLine("\nSorted array");
printArray(arr);
sw.Stop();
Console.WriteLine("Sorted time= {0} ", (sw.ElapsedMilliseconds / 1000.0).ToString());
sw.Reset();
}
}
На определенномоткройте уж секрет. – aepot Nov 10 '21 at 17:19error9и всё, совсем всё? наверняка там были ещё какие-то буквы, слова, предложения – CrazyElf Nov 10 '21 at 17:29O(n^2)получается, для такого числа элементов это, вероятно, просто долго будет вообще. Помимо ошибок. – CrazyElf Nov 10 '21 at 17:31printArray, вы никогда не дождетесь вывода миллиона чисел в консоль.Sorted time= 1151,207. – aepot Nov 10 '21 at 21:07