Двохкомпонентні алгоритми сортування

У роботі досліджувалися можливості покращення часових параметрів сортувань за допомогою попередньої обробки стохастичним сортуванням. Експериментально підтверджено гіпотезу про можливість суттєвого поліпшення часової ефективності двокомпонентного сортування стохастичне + класичне порівняно з таким ж...

Повний опис

Збережено в:
Бібліографічні деталі
Дата:2022
Автори: Шинкаренко, В.І., Дорошенко, А.Ю., Яценко, О.А., Разносілін, В.В., Галанін, К.К.
Формат: Стаття
Мова:Ukrainian
Опубліковано: Інститут програмних систем НАН України 2022
Назва видання:Проблеми програмування
Теми:
Онлайн доступ:http://dspace.nbuv.gov.ua/handle/123456789/188626
Теги: Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
Назва журналу:Digital Library of Periodicals of National Academy of Sciences of Ukraine
Цитувати:Двохкомпонентні алгоритми сортування / В.І. Шинкаренко, А.Ю. Дорошенко, О.А. Яценко, В.В. Разносілін, К.К. Галанін // Проблеми програмування. — 2022. — № 3-4. — С. 32-41. — Бібліогр.: 18 назв. — укр.

Репозитарії

Digital Library of Periodicals of National Academy of Sciences of Ukraine
id irk-123456789-188626
record_format dspace
institution Digital Library of Periodicals of National Academy of Sciences of Ukraine
collection DSpace DC
language Ukrainian
topic Теоретичні і методологічні основи програмування
Теоретичні і методологічні основи програмування
spellingShingle Теоретичні і методологічні основи програмування
Теоретичні і методологічні основи програмування
Шинкаренко, В.І.
Дорошенко, А.Ю.
Яценко, О.А.
Разносілін, В.В.
Галанін, К.К.
Двохкомпонентні алгоритми сортування
Проблеми програмування
description У роботі досліджувалися можливості покращення часових параметрів сортувань за допомогою попередньої обробки стохастичним сортуванням. Експериментально підтверджено гіпотезу про можливість суттєвого поліпшення часової ефективності двокомпонентного сортування стохастичне + класичне порівняно з таким же класичним однокомпонентним. За класичне прийняті сортування різної обчислювальної складності: шейкерне, з обчислювальною складністю O(n²), вставками O(n²), Шелла O(n•(log n)²) ... O(n³/²), а також швидке з оптимізацією кінцевих ділянок O(n•log n). Найбільший ефект досягається при виконанні порівнянь стохастичним сортуванням в обсязі 160 % від обсягу масиву. Введені показники ефективності обміну двох елементів та серії порівнянь з обмінами дозволили встановити найбільшу ефективність стохастичного сортування як першого компонента двокомпонентного сортування, коли один елемент для порівняння обирається з першої частини масиву, а інший – з другої. Покращення часової ефективності досягало 70–80 % для алгоритмів з обчислювальною складністю O(n²). Однак, для сортування Шелла та швидкого попереднє стохастичне сортування не має позитивного ефекту, а навпаки збільшує загальний час сортування, що, вочевидь, пояснюється початковою високою ефективністю даних методів сортування. Гіпотеза про підвищення часової ефективності сортування при трикомпонентному сортуванні швидке + стохастичне + вставками не підтвердилася. Однак, під час експерименту встановлено рекомендований розмір масиву, за якого в двокомпонентному сортуванні швидке + вставками необхідно переходити до другої компоненти – сортуванню вставками. Оптимальна довжина кінцевої ділянки лежить у діапазоні від 60 до 80 елементів. Враховуючи те, що часова ефективність алгоритмів залежить від архітектури комп’ютера, операційної системи, програмного середовища розробки та виконання програми, типів даних, обсягів даних та їхніх значень показники часової ефективності слід уточнювати у кожному конкретному випадку.
format Article
author Шинкаренко, В.І.
Дорошенко, А.Ю.
Яценко, О.А.
Разносілін, В.В.
Галанін, К.К.
author_facet Шинкаренко, В.І.
Дорошенко, А.Ю.
Яценко, О.А.
Разносілін, В.В.
Галанін, К.К.
author_sort Шинкаренко, В.І.
title Двохкомпонентні алгоритми сортування
title_short Двохкомпонентні алгоритми сортування
title_full Двохкомпонентні алгоритми сортування
title_fullStr Двохкомпонентні алгоритми сортування
title_full_unstemmed Двохкомпонентні алгоритми сортування
title_sort двохкомпонентні алгоритми сортування
publisher Інститут програмних систем НАН України
publishDate 2022
topic_facet Теоретичні і методологічні основи програмування
url http://dspace.nbuv.gov.ua/handle/123456789/188626
citation_txt Двохкомпонентні алгоритми сортування / В.І. Шинкаренко, А.Ю. Дорошенко, О.А. Яценко, В.В. Разносілін, К.К. Галанін // Проблеми програмування. — 2022. — № 3-4. — С. 32-41. — Бібліогр.: 18 назв. — укр.
series Проблеми програмування
work_keys_str_mv AT šinkarenkoví dvohkomponentníalgoritmisortuvannâ
AT dorošenkoaû dvohkomponentníalgoritmisortuvannâ
AT âcenkooa dvohkomponentníalgoritmisortuvannâ
AT raznosílínvv dvohkomponentníalgoritmisortuvannâ
AT galanínkk dvohkomponentníalgoritmisortuvannâ
first_indexed 2023-10-18T23:08:46Z
last_indexed 2023-10-18T23:08:46Z
_version_ 1796157366363750400
spelling irk-123456789-1886262023-03-11T01:27:13Z Двохкомпонентні алгоритми сортування Шинкаренко, В.І. Дорошенко, А.Ю. Яценко, О.А. Разносілін, В.В. Галанін, К.К. Теоретичні і методологічні основи програмування У роботі досліджувалися можливості покращення часових параметрів сортувань за допомогою попередньої обробки стохастичним сортуванням. Експериментально підтверджено гіпотезу про можливість суттєвого поліпшення часової ефективності двокомпонентного сортування стохастичне + класичне порівняно з таким же класичним однокомпонентним. За класичне прийняті сортування різної обчислювальної складності: шейкерне, з обчислювальною складністю O(n²), вставками O(n²), Шелла O(n•(log n)²) ... O(n³/²), а також швидке з оптимізацією кінцевих ділянок O(n•log n). Найбільший ефект досягається при виконанні порівнянь стохастичним сортуванням в обсязі 160 % від обсягу масиву. Введені показники ефективності обміну двох елементів та серії порівнянь з обмінами дозволили встановити найбільшу ефективність стохастичного сортування як першого компонента двокомпонентного сортування, коли один елемент для порівняння обирається з першої частини масиву, а інший – з другої. Покращення часової ефективності досягало 70–80 % для алгоритмів з обчислювальною складністю O(n²). Однак, для сортування Шелла та швидкого попереднє стохастичне сортування не має позитивного ефекту, а навпаки збільшує загальний час сортування, що, вочевидь, пояснюється початковою високою ефективністю даних методів сортування. Гіпотеза про підвищення часової ефективності сортування при трикомпонентному сортуванні швидке + стохастичне + вставками не підтвердилася. Однак, під час експерименту встановлено рекомендований розмір масиву, за якого в двокомпонентному сортуванні швидке + вставками необхідно переходити до другої компоненти – сортуванню вставками. Оптимальна довжина кінцевої ділянки лежить у діапазоні від 60 до 80 елементів. Враховуючи те, що часова ефективність алгоритмів залежить від архітектури комп’ютера, операційної системи, програмного середовища розробки та виконання програми, типів даних, обсягів даних та їхніх значень показники часової ефективності слід уточнювати у кожному конкретному випадку. The possibilities of improving sorting time parameters through preprocessing by stochastic sorting were investigated. The hypothesis that two-component stochastic + classical sorting outperforms classic one-component sorting in terms of time efficiency was experimentally confirmed. Sorting with different computational complexity is accepted as classical sorting algorithms: shaker sorting with computational complexity O(n²), insertions O(n²), Shell O(n•(log n)²) ... O(n³/²), fast with optimization of ending sequences O(n•log n). The greatest effect is obtained when performing comparisons using stochastic sorting in the amount of 160 percent of the array’s size. Indicators of the efficiency of the exchange of two elements, as well as series of exchanges, are introduced. This allowed to determine the highest efficiency of stochastic sorting (as the first component of two-component sorting), when one element for comparison is chosen from the first part of the array and the other from the second. For algorithms with a computational complexity of O(n²) the improvement in time efficiency reached 70–80 percent. However, for Shell sort and quick sort, the stochastic presort has no positive effect, but instead increases the total sorting time, which is apparently due to the initial high efficiency of these sorting methods. The hypothesis that three-component sorting fast + stochastic + insertions would increase sorting time efficiency was not confirmed. However, during the experiment, the recommended size of the array was determined, at which point the two-component quick + insertion sort must be switched to the second component – insertion sorting. The optimal length of the ending sequences is between 60 and 80 elements. Given that algorithm time efficiency is affected by computer architecture, operating system, software development and execution environment, data types, data sizes, and their values, time efficiency indicators should be specified in each specific case. 2022 Article Двохкомпонентні алгоритми сортування / В.І. Шинкаренко, А.Ю. Дорошенко, О.А. Яценко, В.В. Разносілін, К.К. Галанін // Проблеми програмування. — 2022. — № 3-4. — С. 32-41. — Бібліогр.: 18 назв. — укр. 1727-4907 DOI: https://doi.org/10.15407/pp2022.03-04.032 http://dspace.nbuv.gov.ua/handle/123456789/188626 004.4+519.2 uk Проблеми програмування Інститут програмних систем НАН України