快速排序举例
墨初 知识笔记 116阅读
什么是快速排序?
答:快速排序 (Quick Sort)是对冒泡 排序 的一种改进,基本思想是选取一个记录作为枢轴,经过一趟 排序 ,将整段序列分为两个部分,其中一部分的值都小于枢轴,另一部分都大于枢轴。 然后继续对这两部分继续进行 排序 ,从而使整个序列达到有序。
如何模拟快速排序?
答:我们先模拟快速排序的过程:首先,在这个序列中随便找一个数作为基准数,通常为了方便,以第一个数作为基准数。 在初始状态下,数字6在序列的第1位。 我们的目标是将6挪到序列中间的某个位置,假设这个位置是 k 。
什么是一趟快速排序?
答:它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 设要排序的数组是A [0]…A [n-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。
快速排序和冒泡排序有什么区别?
答:快速排序之所以比较快,是因为与冒泡排序相比,每次的交换时跳跃式的,每次排序的时候设置一个基准点,将小于等于基准点的数全部放到基准点的左边,将大于等于基准点的数全部放到基准点的右边。 这样在每次交换的时候就不会像冒泡排序一样每次只能在相邻的数之间进行交换,交换的距离就大的多了。