简单用文字说一下-快速排序算法-原理

	快速排序其实是在冒泡排序的基础上改进的。冒泡排序是每次遍历都是两两比较,取出一个最大的放在后边。而快速排序稍微改进了一些。
	快速排序的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
	根据一趟快排的规则,先定下一个关键数据,通常都是数据的第一位,然后进行比较。
	举个例子来说:
	第一行为值,第二行为下标

在这里插入图片描述
1.通常选第一个数为关键数据,定为A,即A=5,从最右边即下标最大处开始与A比较,即用8和5比较,若小于A,则与A换位置,若大于A,则不换位置,并将前一位数即4与A比较。比较规则相同。比较后为:
在这里插入图片描述
2.交换位置后,再从左往右方向与A比较。规则相反,小于A 的不换位置,大于5的要与5换位置。23>5,比较后为:
在这里插入图片描述
3.反复进行 1或2 的操作,再次排序,最终第一次快排完成时的结果为:
在这里插入图片描述
虽然数据并不是由大到小排序的,但是已经根据关键数字5将数据分为大于5和小于5的两部分。再将这两部分分别当成一个整体,再进行快排,最终得到的结果为:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值