快速排序算法 - 13337159127/Note GitHub Wiki
1.快速排序(Quicksort)是对冒泡排序的一种改进。 2.快速排序法的执行原理? 从数组中选取一个基准值,把所有大于这个元素的数都放到它的后面,所有小于这个元素的数都放到它的前面,然后这个元素就把原数组切分成了两个部分,再分别对这个两个部分进行同样的操作,直到数组不能再切分的时候,此时数组为有序。 3.快速排序的执行过程?(数组的值按照从小到大的顺序排列) (1).设置两个变量i和j,i=0,j=数组长度减1 (2).以数组下标为0取出来的数字作为基准数,赋值给number,即number=A[0] (3).从j开始从后向前搜索(j--),找到第一个小于number的值A[j],将A[j]和A[i]互换; (4).从i开始从前向后搜索(i++),找到第一个大于number的值A[i],将A[i]和A[j]互换; (5).重复第3、4步,直到i=j;找到基准数的位置 (6).把基准数分成两个部分,左边的值比基准数小,右边的值比基准数大 (7).然后把基准数左边的值按照“快速排序法”进行排序,把基准数右边的值按照“快速排序法”进行排序, 4.快速排序是最快速的排序方法,但是它是“不稳定”的排序方法。