标签:
快速排序:是对冒泡排序的一种改进。
什么是冒泡排序:简单一点就是冒气泡。极值数据会到达数据的顶端。
实现步骤:建立一个数据排列标准,从大到小还是从小到大。
【从大到小排列】:从第一个数据开始遍历,比较相邻两个数据的大小,大的放前面,小的放后面。遍历一遍以后最小的就到了最后面了。
然后继续,遍历第二遍,第二小的就到了倒数第2个了。
以此类推。。。。
【从小到大排列】:从第一个数据开始,比较相邻两个数据的大小,小的放前面,大的放后面。依此。
N个元素排列,需要遍历N-1次。也就是数组最大的下标。每一次比较依次递减。为N-1 到 0.不难算出对于N个元素的冒泡排序运算次数。
快速排序的原理:将数据无穷按整体大小细分。
对于N个元素来说。
举个例子:100个人随机的在操场上玩耍,老师说:咱们来排个队,从矮到高,听我指挥。你们先排成一列,不管高矮。
好,拍成一列了。老师说:比第一个人高的全部占到左边一列。这时排好了。
然后老师又说:现在大家都看到了吧。你们现在是两列了。现在开始,我说一个标准,你们按照标准来。
即:比一列的第一个人矮的重新在左边开一列,其他人不动。相同身高的,到新的一列去(或者不动),直到最后大家排成一排。
从一列变为一行,我突然想到了什么东西,但又说不清楚,我来花时间想一想。有提示的可以提示一下。谢谢了。
具体关于实现部分这里就不贴代码了。百度快速排序就可以了。
标签:
原文地址:http://www.cnblogs.com/ply616/p/4430427.html