快速排序与归并排序的区别与联系
- 相同点
两者原理都是采用“分而治之”的思想,即首先把待排序的元素分为两组,然后分别对这两组排序,最后把两组结果进行合并。
- 不同点
进行的分组策略不同,后面的合并策略也不同。
归并排序的分组策略是假设待排序的元素存放在数组中,那么其把数组前面一半元素作为一组,后面一半所谓另一组。而快速排序则是根据元素的值来进行分组,即大于某个值的元素放在一组,小于的放在另外一组,该值称为基准。总的来说,如果分组策略越简单,则后面的合并策略就越复杂,因为快速排序在分组时,已经根据元素大小来分组了,在合并时,只需要把两个分组合并起来就行了,而归并排序则需要对两个有序的数组根据大小合并。
posted on 2017-03-28 09:09 一个不会coding的girl 阅读(2208) 评论(0) 编辑 收藏 举报