归并排序
时间复杂度:O(nlogn)
空间复杂度:O(n)
算法思想:
将要排序的数组进行不断切分,切分到最后再逐步进行归并操作。
将数组不断切分为2份,层数:log n,如果每层的merge操作都是n,时间复杂度就是O(nlogn)。
归并过程:
开辟一个辅助空间,建立3个索引,一个是当前merge的位置,一个是头一个有序数组操作到的位置,一个是第二个有序数组操作到的位置。
比较两个有序数组第一个位置的两个数,1小,将1放到数组中,第二个有序数组位置+1,
2和4比较,4小,那么2赋值到第二个位置