2020.1.20每日一题“归并排序”

归并排序是什么

归并排序顾名思义有一个化归合并的过程,那要合并在这之前就有分离,这就是归并排序的步骤:先将要排序的一串数字劈开,劈到最小有序数列(也就是一个一个的时候,只有一个那肯定有序啊);第二步再将他们逐渐合并,继而变成一个有序数列。

为什么要用归并排序

算法复杂度:

最好情况:O(nlogn)

最坏情况:O(nlogn)

平均情况:O(nlogn)

空间复杂度:O(n)

稳定性:稳定

从以上的数据

可以看出归并排序比普通的排序在复杂度上有了很好的提升。

归并排序的代码实现:
在这里插入图片描述

上面这个代码还可用于求逆序数对的个数。

关键就是这段代码:

在这里插入图片描述

发布了32 篇原创文章 · 获赞 5 · 访问量 913

猜你喜欢

转载自blog.csdn.net/LebronGod/article/details/104055745