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

Упорядочить массив a1,a2,…,an по неубыванию используя алгоритм сортировки слияниями

13.03.2017, 20:34. Показов 3402. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Упорядочить массив a1,a2,…,an по неубыванию с помощью алгоритма сортировки слияниями:
-каждая пара соседних элементов сливается в одну группу из двух элементов (последняя группа может состоять из одного элемента);
-каждая пара соседних двухэлементных групп сливается в одну четырехэлементную группу и т.д.

При каждом слиянии новая укрупненная группа сортируется. Использовать функцию сортировки.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.03.2017, 20:34
Ответы с готовыми решениями:

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

Упорядочить массив T в обратном алфавитном порядке, используя метод сортировки посредством выбора
Дан одномерный массив T, компонентами которого являются значения типа String. Напишите программу,...

создать и отсортировать двумерный массив по строкам используя алгоритм сортировки вставкой
создать и отсортировать двумерный массив по строкам используя алгоритм сортировки вставкой

Упорядочить массив по неубыванию с помощью алгоритма сортировки слияниями
Алгоритм фон Неймана. Упорядочить массив a1,a2,...,an по неубыванию с помощью алгоритма сортировки...

1
с++
1282 / 523 / 225
Регистрация: 15.07.2015
Сообщений: 2,562
13.03.2017, 21:27 2
Лучший ответ Сообщение было отмечено ss74 как решение

Решение

алгоритма сортировки слияниями
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
#include <algorithm>
#include <cstddef>
#include <iterator>
#include <memory>
 
template<typename T>
void merge_sort(T array[], std::size_t size) noexcept
{
    if (size > 1)
    {
        std::size_t const left_size = size / 2;
        std::size_t const right_size = size - left_size;
 
        merge_sort(&array[0], left_size);
        merge_sort(&array[left_size], right_size);
 
        std::size_t lidx = 0, ridx = left_size, idx = 0;
        std::unique_ptr<T[]> tmp_array(new T[size]);
 
        while (lidx < left_size || ridx < size)
        {
            if (array[lidx] < array[ridx])
            {
                tmp_array[idx++] = std::move(array[lidx]);
                lidx++;
            }
            else
            {
                tmp_array[idx++] = std::move(array[ridx]);
                ridx++;
            }
 
            if (lidx == left_size)
            {
                std::copy(std::make_move_iterator(&array[ridx]),
                          std::make_move_iterator(&array[size]),
                          &tmp_array[idx]);
                break;
            }
            if (ridx == size)
            {
                std::copy(std::make_move_iterator(&array[lidx]),
                          std::make_move_iterator(&array[left_size]),
                          &tmp_array[idx]);
                break;
            }
        }
 
        std::copy(std::make_move_iterator(tmp_array),
                  std::make_move_iterator(&tmp_array[size]),
                  array);
    }
}
сортировать можно так
C++
1
sort(vec.begin(), vec.end());
0
13.03.2017, 21:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.03.2017, 21:27
Помогаю со студенческими работами здесь

Упорядочить массив по неубыванию с помощью алгоритма сортировки слияниями
Алгоритм фон Неймана. Упорядочить массив a1,a2,...,an по неубыванию с помощью алгоритма сортировки...

Одномерный массив. Упорядочить массив по неубыванию с помощью алгоритма сортировки слияниями
Помогите пожалуйста с этим &quot;Упорядочить массив a1,a2,…,an по неубыванию с помощью алгоритма...

Упорядочить массив x по неубыванию, используя метод сортировки вставками
Задача: const n=5; var x:array of real; Упорядочить массив x по неубыванию, используя метод...

Упорядочить данный массив по (не)возрастанию, используя алгоритм сортировки.
пожалуйста решите Дан одномерный массив a1,...,an, состоящий из 13 действительных чисел....


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

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