快速排序与归并排序的区别与联系

  • 相同点

       两者原理都是采用“分而治之”的思想,即首先把待排序的元素分为两组,然后分别对这两组排序,最后把两组结果进行合并。

 

  • 不同点

       进行的分组策略不同,后面的合并策略也不同。

       归并排序的分组策略是假设待排序的元素存放在数组中,那么其把数组前面一半元素作为一组,后面一半所谓另一组。而快速排序则是根据元素的值来进行分组,即大于某个值的元素放在一组,小于的放在另外一组,该值称为基准。总的来说,如果分组策略越简单,则后面的合并策略就越复杂,因为快速排序在分组时,已经根据元素大小来分组了,在合并时,只需要把两个分组合并起来就行了,而归并排序则需要对两个有序的数组根据大小合并。

posted on 2017-03-28 09:09  一个不会coding的girl  阅读(2203)  评论(0编辑  收藏  举报

导航