大家好,我是小科,我来为大家解答以上问题。五帝钱的排序方法,排序方法很多人还不知道,现在让我们一起来看看吧!
1、快速排序,就是拿出一个元素,把比它小的都放在左边,比它大的都放在右边,然后把左右两边的序列继续这样排序。
2、通常拿出的这个元素都是序列中的第一个,因为这样比较简单,不用思考。
3、举例: 4,2,7,5 第一次整理为:2,(4),7,5 冒泡排序就是相邻元素的两个两个比较,第一个第二个比较,大的放在第二个,第二个第三个比较,大的放在第三个……从左到右来一次,就会有一个最大的被找到而放在了最右边,这个过程就像水了的泡泡越上浮越大一样。
4、举例: 4,2,7,5 第一次比较:2,4,7,5 第二次比较:2,4,7,5 第三次比较:2,4,5,7 直接插入排序,就是向有序序列中放入一个元素,先放在最后看看,发现不符合顺序要求,那就放在倒数第二个,看看,还不符合要求……一直找到一个位置,使这些元素有序,那么就实现了排序。
5、举例: 4,2,7,5 第一次,只有一个4,认为是有序的。
6、所以结果是:4,2,7,5 第二次,把2一起考虑进来,发现比前面的4小,所以无序,那么交换他俩,所以是:2,4,7,5 然后继续看,发现2已经到最前面了,那么就结束吧。
7、 第三次,把7一起考虑进来,发现比前面的4大,所以顺序是对的。
8、结果是:2,4,7,5 第四次,把5考虑进来,发现比7小,交换,比前面的4大,ok,位置可以固定了,结果是:2,4,5,7 最后的堆排序麻烦一些,要考虑堆的意义。
9、举小堆来说,好比一摞金子塔(三角形),顶上的总是脚上的两个小,所以最上面尖尖上的元素是最最小的,而最大的一定在最底下一层里,位置不固定的。
10、堆排序就是说,每次取最小的那个(小堆的例子)也就是最上面那个,取出来之后,把其他的元素再整理成小堆,再取最顶上那个是次小的元素,这样一直把所有元素都取出来,取的顺序就是排序的结果了。
11、举例: 。
12、3。
13、4。
14、5。
15、5。
16、6。
17、9 采取的方案是把最小的和最后一个交换位置,理解为取出了最顶上那个。
18、9.。
19、4.。
20、5.。
21、5。
22、6.。
23、3 注意,3是第一个取出来的,就可以认为它不存在啦,接着整理这个堆,9-4-5这个三角形整理一下,变成: 。
24、4.。
25、9.。
26、5.。
27、5.。
28、6.。
29、 看到左下角的三角形不符合规则,继续整理 。
30、4.。
31、5.。
32、5.。
33、9.。
34、6.。
35、 ok了,所有元素又呈现堆的样子了,每个三角形中,下面的都比上面的大。
36、可以取下一个次小的元素啦。
37、 上面解释的比较模糊,如果有问题,就继续联络吧。
本文到此讲解完毕了,希望对大家有帮助。