Merge排序

来源:互联网 发布:python 分隔符 编辑:程序博客网 时间:2024/06/05 11:15

分治法三个步骤:

分解(divide:将原问题分解成若干个自问题

解决(conquer:递归地解决这些子问题,若子问题足够小,就直接解决

合并(combine:将子问题的解合并成原问题的解

Merge排序就是通过分治法解决的经典算法,其实的Merge过程就可以用扑克牌来做比喻,两堆已排序的牌面朝上,放在桌面上,我们希望合并成一个新的已排序的扑克牌序列

 

算法复杂度:O(NlgN)

Merge-SortC++实现如下:

原创粉丝点击