归并排序java实现:归并排序 :中文理解就是合并的意思,.也就是号将两个分开的部分,合并成为一个整体,可是,如何实现所谓合并呢?
其实更好的体现了算法的思想,将部分——>merge——>成为整体,Merge,像和面一样,很充分的结合。
原理(先分后和):
step1:将一个无序的序列分开为n个有序的长为1的子序列
step2:n个中两两配对按顺序合并,得到n/2个有序子序列
step3:n/2个里再继续两两按顺序合并,得到n/4个有序子序列
...
step end:最后2个按顺序合并,成为一个n长的有序序列
下面代码为将序列进行分开并合并:
下面代码为将两个序列进行Merge:
测试用例:
输入:{50,10,80,90,40,20,30,60,70,110,100}
输出:{10 20 30 40 50 60 70 80 90 100 110}。
就爱阅读www.92to.com网友整理上传,为您提供最全的知识大全,期待您的分享,转载请注明出处。
来源: http://www.92to.com/bangong/2017/04-12/20348443.html