排序--归并排序算法

特点

1、n个元素的待排序列两两元素合并,形成n/2个无序子序列。无序子序列内部分别进行排序,形成有序子序列。

   n/2个有序子序列两两合并,形成n/4个无序子序列。无序子序列内部分别进行排序,形成有序子序列。

   n/4个有序子序列两两合并,形成n/8个无序子序列。无序子序列内部分别进行排序,形成有序子序列。

     如此循环,最终形成1个有序序列。

 

步骤分析

待排数组:arr[13]={9,3,13,1,7,5,8,6,2,12,11,10,4}   

排后数组:newArr[13]=?

第一轮:newArr={3,9,   1,13,   5,7,   6,8,   2,12,   10,11,   4}   

第二轮:newArr={1,3,9,13,    5,6,7,8,    2,10,11,12,    4}   

第三轮:newArr={1,3,5,6,7,8,9,13,      2,4,10,11,12}   

第四轮:newArr={1,2,3,4,5,6,7,8,9,10,11,12,13} 

 

时间复杂度

O(nlogn)

 

posted @ 2017-02-27 11:08  无主之城  阅读(152)  评论(0编辑  收藏  举报