摘要: 归并排序将数组分为两个子数组分别排序,并将有序的子数组归并使得整个数组排序; 快速排序通过一个切分元素将数组分为两个子数组,左子数组小于等于切分元素,右子数组大于等于切分元素,将这两个子数组排序也就将整个数组排序了。 快速排序是原地排序,不需要辅助数组,但是递归调用需要辅助栈。 快速排序最好的情况下 阅读全文
posted @ 2019-05-31 17:37 earth_houge 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 归并排序的思想是将数组分成两部分,分别进行排序,然后归并起来。 阅读全文
posted @ 2019-05-31 17:36 earth_houge 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 对于大规模的数组,插入排序很慢,因为它只能交换相邻的元素,每次只能将逆序数量减少 1。希尔排序的出现就是为了解决插入排序的这种局限性,它通过交换不相邻的元素,每次可以将逆序数量减少大于 1。 希尔排序使用插入排序对间隔 h 的序列进行排序。通过不断减小 h,最后令 h=1,就可以使得整个数组是有序的 阅读全文
posted @ 2019-05-31 17:35 earth_houge 阅读(330) 评论(0) 推荐(0) 编辑