双分量排序算法

V. Shynkarenko, A. Doroshenko, O. Yatsenko, V. Raznosilin, K. K. Halanin
{"title":"双分量排序算法","authors":"V. Shynkarenko, A. Doroshenko, O. Yatsenko, V. Raznosilin, K. K. Halanin","doi":"10.15407/pp2022.03-04.032","DOIUrl":null,"url":null,"abstract":"he 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 sort- ing with computational complexity O(n2), insertions O(n2), Shell O(n·(log n)2) ... O(n3/2), 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(n2) the improvement in time efficiency reached 70–80 percent. However, for Shell sort and quick sort, the stochas- tic 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, operat- ing system, software development and execution environment, data types, data sizes, and their values, time efficiency indicators should be specified in each specific case.","PeriodicalId":313885,"journal":{"name":"PROBLEMS IN PROGRAMMING","volume":"67 8 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Bicomponent sorting algorithms\",\"authors\":\"V. Shynkarenko, A. Doroshenko, O. Yatsenko, V. Raznosilin, K. K. Halanin\",\"doi\":\"10.15407/pp2022.03-04.032\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"he 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 sort- ing with computational complexity O(n2), insertions O(n2), Shell O(n·(log n)2) ... O(n3/2), 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(n2) the improvement in time efficiency reached 70–80 percent. However, for Shell sort and quick sort, the stochas- tic 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, operat- ing system, software development and execution environment, data types, data sizes, and their values, time efficiency indicators should be specified in each specific case.\",\"PeriodicalId\":313885,\"journal\":{\"name\":\"PROBLEMS IN PROGRAMMING\",\"volume\":\"67 8 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2022-12-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"PROBLEMS IN PROGRAMMING\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.15407/pp2022.03-04.032\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"PROBLEMS IN PROGRAMMING","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.15407/pp2022.03-04.032","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

探讨了通过随机排序预处理提高排序时间参数的可能性。实验证实了双分量随机+经典排序在时间效率上优于经典单分量排序的假设。不同计算复杂度的排序是公认的经典排序算法:计算复杂度为O(n2)的摇床排序、O(n2)的插入排序、O(n·(log n)2)的Shell排序……O(n3/2),快速优化结束序列O(n·log n)。当使用随机排序在数组大小的160%的量中进行比较时,获得最大的效果。介绍了两种要素交换效率的指标,以及一系列的交换。这允许确定随机排序的最高效率(作为双组件排序的第一个组件),当用于比较的一个元素从数组的第一部分中选择,另一个从数组的第二部分中选择。对于计算复杂度为O(n2)的算法,时间效率提高了70 - 80%。然而,对于Shell排序和快速排序,随机排序并没有产生积极的影响,反而增加了总排序时间,这显然是由于这些排序方法的初始效率很高。三分量排序快速+随机+插入会增加排序时间效率的假设没有得到证实。然而,在实验过程中,确定了推荐的数组大小,此时必须将两组分快速+插入排序切换到第二组分-插入排序。结束序列的最佳长度在60 ~ 80个元素之间。由于算法的时间效率受计算机体系结构、操作系统、软件开发和执行环境、数据类型、数据大小及其数值等因素的影响,因此应根据具体情况指定时间效率指标。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Bicomponent sorting algorithms
he 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 sort- ing with computational complexity O(n2), insertions O(n2), Shell O(n·(log n)2) ... O(n3/2), 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(n2) the improvement in time efficiency reached 70–80 percent. However, for Shell sort and quick sort, the stochas- tic 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, operat- ing system, software development and execution environment, data types, data sizes, and their values, time efficiency indicators should be specified in each specific case.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信