共查询到20条相似文献,搜索用时 46 毫秒
1.
一种新型单循环排序算法 总被引:2,自引:2,他引:2
排序是计算机程序设计中一项经常而又重要的操作,研究排序算法具有重要的理论意义和广泛的应用价值。通过对目前常用的几种排序算法的研究,指出它们均为双重循环或多重循环结构设计,借鉴了军队排队列的思想,提出一种只需要单重循环结构即可完成排序过程的新型算法,并进行了编程实现。通过对该算法的时间复杂度、空间复杂度以及稳定性等性能分析,证明该算法对于基本有序的数据排列排序性能优秀,对于数据排列大都是两两错位的排序过程接近最优算法。 相似文献
2.
排序是计算机程序设计中一项经常而又重要的操作,研究排序算法具有重要的理论意义和广泛的应用价值.通过对目前常用的几种排序算法的研究,指出它们均为双重循环或多重循环结构设计,借鉴了军队排队列的思想,提出一种只需要单重循环结构即可完成排序过程的新型算法,并进行了编程实现.通过对该算法的时间复杂度、空间复杂度以及稳定性等性能分析,证明该算法对于基本有序的数据排列排序性能优秀,对于数据排列大都是两两错位的排序过程接近最优算法. 相似文献
3.
一种节省空间的排序算法 总被引:2,自引:0,他引:2
目前报道的一些排序算法,空间复杂度都比较大.提出了一种改进其空间复杂度的方法,其特点是算法简单、稳定,时间复杂度为O(n^2),空间复杂度为2n,达到下界.与传统的排序算法用变量与变量比较的思路不同,本文提出的是一种用变量与其分布区间进行比较的新思路.本算法特别适合那些范围确定且分布基本均匀的待排数据,也适合一般数据对象的排序. 相似文献
4.
冒泡排序算法是一种易实现且稳定的计算机排序算法,但是由于该算法的时间复杂度较高,因此,冒泡排序不适用于大规模数据集。在本文中,我们提出了一种针对经典冒泡排序算法的改进方法-基于双数据处理的双路冒泡排序算法,该方法在每趟排序的过程中可以同时确定两个数据的位置,从而减少排序过程中所需的循环次数,以达到降低了算法的时间复杂度的目的。最终的仿真实验结果表明,双路冒泡排序算法是可行有效的,它显著地降低了冒泡排序过程中所需的数据比较次数和移动次数。 相似文献
5.
排序是计算机科学中最基本、最重要的研究问题之一。目前常用的排序算法均为双重或多重循环设计,并且大多是程序驱动,本文提出一种新型的基于数据驱动的单循环排序算法,并对该算法进行了性能优化与分析. 相似文献
6.
7.
快速排序算法是基于关键字比较的一种性能较好的排序算法,平均时间复杂度为O(nlogn)。文章针对快速排序分治的策略和基数排序的原理,提出了一种基于基数的快速排序改进算法,论述了改进算法的理论依据和基本思想,并给出了递归形式的算法描述。改进后的算法在执行效率方面和占用辅助空间方面都有所改善。改进后算法不需要作关键字比较,特别适合大数据量的排序,具有一定的应用价值。 相似文献
8.
循环插入排序法 总被引:2,自引:0,他引:2
唐开山 《计算机工程与应用》2005,41(12):88-91
文章提出了一种循环插入的排序方法。给出了算法思想、算法描述、算法分析和实验结果。其理论意义是改进了一类时间复杂度为O(N2)排序法的时间复杂度,其实用价值是该排序法在一类时间复杂度为O(N2)排序法中排序效率较高的,其平均排序速度比直接插入排序法、选择排序法、冒泡排序快50%~63%。 相似文献
9.
排序是将由若干数据元素(或记录)构成的一条任意序列,重新根据特定关键字排列成一条有序的序列的一种操作.介绍了6种经典的排序算法:冒泡、快速、直接插入、希尔、简单选择、归并,详细讨论了这6种排序算法的基本思想、时间复杂度,并对这些排序算法进行了分析和比较. 相似文献
10.
快速排序在数据部分相等或有序时,时间复杂度最坏为O(n2)。针对于任意类型的分类数据的排序,文章在快速排序的基础上,提出一种新的排序算法,具有快速排序算法的简洁性,但是不使用递归算法,时间复杂度为O(n),空间复杂度为O(1)。通过理论分析和实验表明,该算法的性能明显优于其它排序算法,特别适合于数据量大的场合。 相似文献
11.
12.
王永刚 《数字社区&智能家居》2006,(10):1-2,6
排序在数据处理中占有极重要的位置,排序算法的好坏,直接影响到实现的复杂度。本文介绍了常用的排序算法,并详细讨论了各种排序法的实现、改进和时间复杂度。最后对这些排序算法进行了比较。 相似文献
13.
排序算法综述 总被引:1,自引:0,他引:1
王永刚 《数字社区&智能家居》2006,(29)
排序在数据处理中占有极重要的位置,排序算法的好坏,直接影响到实现的复杂度。本文介绍了常用的排序算法,并详细讨论了各种排序法的实现、改进和时间复杂度。最后对这些排序算法进行了比较。 相似文献
14.
15.
一种三路划分快速排序的改进算法 总被引:1,自引:0,他引:1
快速排序是一种经典的排序算法,它的平均性能非常突出。针对快速排序在某些特殊情况下(如数据已有序或重复数据较多时)效率较低的问题进行了研究,对三路快速排序进行改进,使快速排序在特殊情况下也能保持较好的效率。通过大量的数据测试发现,该算法在最好情况下其性能在几个数量级上优于普通快速排序,在最坏情况下,其性能较普通快速排序无明显差距。改进后的三路快速排序是一种通用高效的排序算法,因此在某些情况下选用、该算法会获得更好的效率。 相似文献
16.
一种基于的统计的排序算法 总被引:1,自引:0,他引:1
本文提出了一种基于统计的快速排序算法,并对该算法的时间复杂度和空间复杂度进行了分析,该算法要求排序关键字满足一定的约束条件,其时间复杂度为O(n),对该算法做一些简单的修改,还可以将其推广到一般关键字的排序问题。 相似文献
17.
排序有许多经典的算法,如插入排序、交换排序、选择排序等。这些排序算法的性能包括时间复杂度、空间复杂度以及稳定性各有优劣。笔者在这里给出一种全新的排序算法——队与栈排序。这种算法打破传统以交换或移动为主要排序的做法,而是借助栈和队这两种数据结构来实现排序。 相似文献
18.
李崇 《电脑编程技巧与维护》2016,(11):16-17
链表是一种较为复杂的数据结构,而基于链表的排序算法更是让人难以理解,且普遍效率较低,但其运用却极其广泛.通过对基于单向链表的插入排序算法进行剖析,继而归纳出其与顺序存储结构上实现插入排序算法的区别与优势,并从时间复杂度、空间复杂度与稳定性进行比较,体现出其优越性能和实现技巧. 相似文献
19.
张雪坤 《电脑编程技巧与维护》2018,(5):7-9
介绍了计算机算法特别是排序算法的概念,以及评估算法性能的指标。然后介绍了常见排序算法,重点研究了选择排序的原理,并进行具体的实现,并分析了该算法的时间和空间复杂度。 相似文献