С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 21.03.2021
Сообщений: 1
1

Отсортировать массив методом подсчета

21.03.2021, 14:43. Показов 337. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем здравствуйте. Вот мне дали задание отсортировать массив методом подсчета и реализовать сортировку упорядоченного, неупорядоченного и упорядоченного в обратном порядке массивов и реализовать таймер для каждого вида массива. У меня получилось реализовать неупорядоченный массив, а с таймером появились проблемы. Помогите с алгоритмом для полной программы.



C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include <stdio.h>
#include <iostream>
#include <iomanip>
#include <chrono>
#include <stdlib.h>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "ru");
    int N, max, min, L, k;
    cout << "Введите размер массива:" << endl;
    cin >> N;
    int* A = new int[N];
    max = INT_MIN;
    min = INT_MAX;
    cout << "Ввод массива:" << endl;
    for (int i = 0; i < N; i++)
 
    {
        A[i] = rand() % 100;
        cout << setw(4) << A[i];
        if (A[i] > max)
            max = A[i];
        if (A[i] < min)
            min = A[i];
    }
    cout << endl;
    L = max - min + 1;
    int* B = new int[L];
    for (int i = 0; i < L; i++)
    {
        B[i] = 0;
    }
    for (int i = 0; i < N; i++)
    {
        B[A[i] - min]++;
    }
    k = 0;
    for (int i = 0; i < L; i++)
    {
        for (int j = 0; j < B[i]; j++)
        {
            A[k++] = i + min;
        }
    }
    for (int i = 0; i < N; ++i)
    {
         auto start = chrono::high_resolution_clock::now();
        
        auto end = chrono::high_resolution_clock::now();
        chrono::duration<double> duration = end - start;
        B[i] = duration.count();
 
        printf("\nДлительность: %.7f\n", B[i]);
    }
    cout << "Массив после сортировки:" << endl;
    for (int i = 0; i < N; i++)
    {
        cout << A[i] << " ";
    } 
    
    cout << endl;
    delete[] A;
    delete[] B;
    system("pause");
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.03.2021, 14:43
Ответы с готовыми решениями:

Первый массив отсортировать методом выбора, второй методом пузырька
Задание. Составить на одном из алгоритмических языков программу, запускается и выдает на экран меню...

Отсортировать массив методом минимального элемента и методом пузырька
Друзья помогите! Очень мало времени на поиски подобного на сайте... А (100) -Случайные числа....

Массив: Сортировка методом подсчёта
Написал код на сортировку методом подсчёта, не работает корректно, ПОСМОТРИТЕ что не так: ...

Массив: преобразорвать двумерный массив в одномерный и отсортировать его методом пузырька
всем привет. народ помогите с прогой, конкретно с функцией sort (65 строка), она должна двухмерный...

0
21.03.2021, 14:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.03.2021, 14:43
Помогаю со студенческими работами здесь

Отсортировать (по неубыванию) методом прямого выбора массив целых чисел A[n], n> 100. Массив заполнить случайным образом
Во втором button сортировка не работает. Помогите( ...

Отсортировать массив методом Шелла
Здравствуй, помогите пожалуйста решить! Отсортировать массив, не упорядоченый ни по неубыванию, ни...

Отсортировать массив методом экстремумов
Доброе время суток. Задача звучит следующим образом: Реализовать сортировку массива по...

Отсортировать массив методом Шелла
Помогите пожалуйста! Отсортировать массив методом Шелла. Массив нужно вводить вручную. Если можно...

Отсортировать массив по возрастанию методом
Написать программу работы с одномерным массивом из 15 вещественных элементов для решения задач: ...

Отсортировать методом выбора массив
Имеется массив размерностью NxN, где N = 9. Отсортировать методом выбора так, чтобы элементы в них...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru