1
算法与数据结构  C语言版
1.10.5.2 8.5.2 2-路归并排序的时间复杂度
8.5.2 2-路归并排序的时间复杂度

归并排序的空间复杂度就是临时的数组和递归时压入栈的数据占用的空间:n+log2n,所以空间复杂度为:O(n),其时间复杂度为O(nlog2n)。

与快速排序和堆排序相比,归并排序的最大特点是,它是一种稳定的排序方法。但在一般情况下,很少利用2-路归并排序法进行内部排序。

2-路归并排序的递归算法从程序的书写形式上看比较简单,但是在算法执行时,需要占用较多的辅助存储空间,即除了在递归调用时需要保存一些必要的信息,在归并过程中还需要与存放原始记录序列同样数量的存储空间,以便存放归并结果,但与快速排序及堆排序相比,它是一种稳定的排序方法。