首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 62 毫秒
1.
单向链表广泛应用于动态存储结构,当前单向链表的排序算法普遍效率偏低,而平均效率最高的快速排序算法并不适用于单向链表。基于分治策略,使用递归方法,通过重新链接单向链表节点,提出了用于单向链表的快速排序算法,其平均时间复杂度为O(nlog2n),辅助空间复杂度为O(0),平均递归栈空间复杂度为O(log2n);同时,进行了算法分析和实验测试,其效率较其它单向链表排序算法有较大提高,且较传统基于线性表的快速排序算法也有一定提高。研究结果解决了当前单向链表排序效率较低的  相似文献   

2.
归并排序是一种稳定,高效的排序算法。归并排序算法一般是用顺序存储结构实现的。如Sun公司JDK中Java Collection库中对数组、List的排序。使用顺序存储结构实现归并排序需要空间复杂度为O(n)的辅助存储空间,对于链表来说,还需要转换为顺序存储结构,所以共需要2n的辅助存储空间。本文提出一种链表非递归归并排序算法,可以对链表进行原地(In Place)排序,只需要O(logn)的辅助存储空间,时间复杂度不变。  相似文献   

3.
本文主要描述了分治策略的基本思想,并且用分治策略实现了快速排序和归并排序两种排序算法。从分、解、合三方面剖析排序,从而得出分割方式是影响排序效率的关键,并将分治法扩展应用到更多排序方法中。  相似文献   

4.
本文对快速排序算法的应用范围进行了非常有意义的扩充,使其能应用于线性链表中,并给出了实现该算法的Java源程序.  相似文献   

5.
基于链表的对分排序算法及实现   总被引:2,自引:0,他引:2  
张磊 《微机发展》2002,12(2):55-57
针对以链表为存储结构的数据对象进行排序方法研究,具体描述了对分排序的算法思想,并给出了实现排序算法的有关函数。  相似文献   

6.
本文通过对单向指针链表数据的存贮和快速搜索的研究,结合一些成熟的搜索算法,在VC和TC语言中实现了基于单向指针链表的快速搜索算法,并给出了算法相关的具体原理和实现代码。本算法摈弃了单向指针链表数据的逐点循序搜索算法的缺点,加快了搜索速度。进一步发挥了单向指针链表数据的优势。  相似文献   

7.
深度优先稳定原地归并排序的高效算法   总被引:1,自引:0,他引:1  
白宇  郭显娥 《计算机应用》2013,33(4):1039-1042
基于分治策略,使用深度优先的方法,提出了一种用于线性表的稳定原地归并排序算法,其时间复杂度为O(n lb n),辅助空间复杂度为O(1),递归栈空间复杂度为O(lb n),同时进行了算法分析和实验测试。实验结果表明,该算法效率较STL中的稳定原地归并排序算法有67.51%的提升,解决了稳定排序算法中要么时间复杂度高要么空间复杂度高的问题。  相似文献   

8.
快速排序将文件分成两个子文件,然后递归地将两个子文件排序,其平均复杂性为O。本文给出超快速排序算法,建立将文件分成N个子文件,然后递归地将N个子文件排序,其平衡复杂性为O(N)。  相似文献   

9.
链表是一种较为复杂的数据结构,而基于链表的排序算法更是让人难以理解,且普遍效率较低,但其运用却极其广泛.通过对基于单向链表的插入排序算法进行剖析,继而归纳出其与顺序存储结构上实现插入排序算法的区别与优势,并从时间复杂度、空间复杂度与稳定性进行比较,体现出其优越性能和实现技巧.  相似文献   

10.
归并排序是一种稳定.高效的排序算法。归并排序算法一般是用顺序存储结构实现的。如Sun公司JDK中Java Collection库中对数组、List的排序。使用顺序存储结构实现归并排序需要空间复杂度为O(n)的辅助存储空间,对于链表来说,还需要转换为顺序存储结构,所以共需要2n的辅助存储空间。本文提出一种链表非递归归并排序算法,可以对链表进行原地(In Place)排序,只需要O(logn)辅助存储空间,时间复杂度不变。  相似文献   

11.
12.
单链表由于其存储结构的局限性,通常采用插入算法实现排序,速度很慢,满足不了大规模问题的速度要求。在分析了单链表结构特征及快速排序算法思想的基础之上,作者提出并实现了在单链表中基于多个条件的快速排序算法,从而极大提高了排序的效率。  相似文献   

13.
论文提出了一种高效稳定的多边形裁剪算法,算法支持带内环的平面简单 多边形,同时也支持多边形的“并”和“差”等布尔运算。首先,设计了算法所需的数据结构; 其次,基于直线扫描转换Bresenham 算法原理提出了边网格划分的有效算法,并应用一个简 单的方法避免不同网格内边的重复求交;最后,将交点分类为普通交点和顶交点,并针对这 两类交点构造了不同的跟踪策略,在跟踪过程中交替、递归地应用这两个策略来确保算法处 理特殊情况时的稳定性。与其它同类算法的比较表明,新算法具有更高的效率。  相似文献   

14.
针对计算机解决大学课程表问题的难点,提出使用优先级链表解决课表问题的贪心策略。该策略定义了特有的数据优先级权重,并以权重为基础生成排课数据的优先级链表,以优化设计编码,实现了一种基于链表操作的贪心排课算法。  相似文献   

15.
低代价最短路径树是一种广泛使用的多播树。在FLSPT算法的基础上,通过选择有序双循环链表作为待发展节点序列Q的运算与存储中心,提出了基于有序双循环链表的低代价最短路径树快速算法DKFLSPT。该算法构造的最短路径树与FLSPT算法构造的最短路径树具有相同的性能,利用有序双循环链表的局部性原理来达到改进节点路径最小值的搜索过程。随机网络模型的仿真结果表明,DKFLSPT 算法效率平均可以提高19%。  相似文献   

16.
大整数取模运算是密码学应用的一种基本运算,尤其是在基于因子分解假设的公钥密码学中占有极其重要的地位。提出的m位和n位两个大整数快速取模算法,是利用分治法思想,将n位的大整数分解为n个独立十进制整数的组合,通过八次大整数乘法建立一个预处理表,能够有效地将大整数取模的计算复杂度降为[O(n(m-n))],经大量实验数据验证该算法的合理性和高效性。  相似文献   

17.
孙义欣 《计算机时代》2012,(1):27-28,30
对关键字数量远少于记录数量的排序问题进行了研究,提出了基于分治和递归策略的有效算法。经与选择排序算法比较,该算法在各种情况下的交换次数均明显少于经典的选择排序算法。  相似文献   

18.
针对微粒群优化算法易发生过早收敛问题,受自然界分而治之的思想和共生现象的启发,提出了一种二分微粒群协同进化优化算法,算法的主要思想是在奇数次对种群进行寻优,在偶数次将微粒群分为两个子种群,子种群独立完成寻优任务,与其他群体几乎不发生联系。最后,通过对5个标准函数的测试结果表明,提出的算法在一定程度上避免了陷入局部极值点,并且提高了收敛精度。  相似文献   

19.
基于分治策略求解方程根的个数   总被引:1,自引:0,他引:1  
n元高次方程根的个数求解常因问题的规模过大而使通常的算法时间复杂度过高。主要介绍了基于分治策略的二分思想来降低该问题的时间复杂度,并利用哈希技术和线性冲突解决方法进一步提高求解n元高次方程根个数的算法效率。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号