neejiii
@neejiii
Студент

VS работает некорректно, в чём проблема?

Visual Studio считает время выполнения сортировки подсчетом и сравнением неверно, чем больше чисел в массиве для сортировки, тем меньше время выполнения. В чем может быть проблема?
Используемый код:

//Начало отсчёта времени
auto begin = chrono::steady_clock::now();

// Создание и заполнение нулями массива Count
int* Count = new int[n];
for (int i = 0; i < n; i++)
Count[i] = 0;

// Заполнение массива Count номерами для каждого элемента массива А
for (int i = 0; i < n - 1; i++)
for (int j = i + 1; j < n; j++)
if (a[i] < a[j])
Count[j]++;
else
Count[i]++;

// Создание массива с отсортированными данными
int* R = new int[n];
for (int i = 0; i < n; i++)
R[Count[i]] = a[i];

//Конец отсчета времени
auto end = chrono::steady_clock::now();
auto elapsed_ns = chrono::duration_cast<chrono::nanoseconds>(end - begin);
long double time = elapsed_ns.count() / pow(10, 9);
cout « " Время выполнения : " « setprecision(20) « time « " msec" « endl;
  • Вопрос задан
  • 81 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы