归并排序
- 一种简单却十分高效的排序方法,非常适合新手学习
引言
- 在C语言的教材中, 介绍了冒泡排序和选择排序等几种简单的排序。 操作简单, 容易理解,但是时间复杂度却比较高。今天在这里介绍另一种简单排序 -归并排序, 听起来就有B格。
优点
- 归并排序的优点简单来讲就是稳稳的快。
- 首先归并排序的时间复杂度是nlog(n), 比起n^2的冒泡排序快乐不少
- 其次它稳定,快排的时间复杂度也是nlog(n), 但是当数组完全逆序的情况下, 快排的时间复杂度就会和冒泡排序一样变成n^2了, 然而归并排序则是稳稳的nlog(n),而且我个人觉得归并排序好理解一点。
原理
- 归并排序的原理就是二分法, 分而治之。 大化小, 小化了。
代码
1 |
|