排序--归并排序算法
特点
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)