Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
 Аватар для templllar
2 / 2 / 1
Регистрация: 17.05.2009
Сообщений: 99

Параллельная сортировка массива

10.01.2019, 11:45. Показов 3457. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

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

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
List<Thread> threads = new ArrayList<>();
 
  for (int i = 1; i <= threadCount; i++) {
            int[] localArray;
         
 // Здесь заполняется массив localArray элементами из основного большого массива
 
            SortedArrayTask sortedArrayTask = new SortedArrayTask(localArray);
//SortedArrayTask хранит в себе массив и методом run() сортирует его.
            threads.add(new Thread(sortedArrayTask));
        }
 
       for (Thread thread : threads) {
            thread.start();
        }
 
        for (Thread thread : threads) {
            thread.join();
        }
Не понимаю, как можно достать эти отсортированные массивы из потоков, чтобы потом их смержить.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.01.2019, 11:45
Ответы с готовыми решениями:

Параллельная сортировка
Я знаю что под понятием параллельная сортировка подразумивают нечто другое. Есть два одномерных массива чисел, по сути таблица с тремя...

Параллельная сортировка Бэтчера
Доброго времени суток всем. есть код: #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #define N 16 int Arr;

Параллельная сортировка Шелла
Здравствуйте!!! Помогите с заданием: Нужно распараллелить сортировку Шелла, но у меня что-то не выходит((( #include &lt;stdio.h&gt; ...

2
2 / 1 / 1
Регистрация: 09.01.2019
Сообщений: 5
10.01.2019, 15:02
Лучший ответ Сообщение было отмечено templllar как решение

Решение

Вот из этого кода поймете примерно как можно сделать:
Java
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
        float[] arr = new float[size]; // Исходный массив
        float[] a1 = new float[h]; // Массив 1
        float[] a2 = new float[h]; // Массив 2
 
/****** Здесь разбиваем исходный массив на два ****/
        System.arraycopy(arr, 0, a1, 0, h);
        System.arraycopy(arr, h, a2, 0, h);
 
/**** Здесь описываем два (или больше) ваших трэда ***/
        Thread thread = new Thread(new Runnable() {
            @Override
            public void run() {
/**** Здесь пишем алгоритм сортировки для a1. Код ниже, после сортировки, положит ваш a1 обратно в исходный массив ***/
                System.arraycopy(a1, 0, arr, 0, h);
            }
        });
        Thread thread1 = new Thread(new Runnable() {
            @Override
            public void run() {
/**** Тоже самое. Здесь пишем алгоритм сортировки для a2. Код ниже, после сортировки, положит ваш a1 обратно в исходный массив ***/
                System.arraycopy(a2, 0, arr, h, h);
            }
        });
        thread.start();
        thread1.start();
        try {
            thread.join();
            thread1.join();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
1
 Аватар для templllar
2 / 2 / 1
Регистрация: 17.05.2009
Сообщений: 99
11.01.2019, 22:25  [ТС]
Идею понял, благодарю.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.01.2019, 22:25
Помогаю со студенческими работами здесь

Параллельная сортировка Бэтчера
Совершенно нигде не могу найти внятного разъяснения что это за сортировка и как её применить. Помогите пожалуйста. Обращался в контору...

Параллельная сортировка ListBox
В ListBox1 у меня вопросы, в ListBox2 ответы. Все построчно упорядочено, в 3 строке ListBox1 содержится ответ в 3 строке ListBox2. Но...

Параллельная сортировка пузырьком
Добрый день, помогите пожалуйста реализовать параллельное сортировки пузырьком.

Параллельная сортировка, протестировать алгоритм
Надо протестировать масштабируемость работы алгоритма для параллельной сортировки, у кого более 2 процессорных ядер. На 2-х ядрах...

Параллельная сортировка Бэтчера. Алгоритм М
Запрограммировал метод Шелла алгоритм D. До сих пор не могу понять как делается эта сортировка бэтчера, как говориться гляжу в книгу, вижу...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru