六大排序原理(十六)

冒泡排序:重复从序列右边开始比较相邻两个数字的大小,再根据结果交换两个数字的位置。…

冒泡排序:重复从序列右边开始比较相邻两个数字大小再根据结果交换两个数字的位置

在这个过程中,数字会像泡泡一样,慢慢从右边往左“浮”到序列的顶端。这个算法称之为“冒泡排序”。

选择排序:重复从待排序的数据中寻找最小值,将其与序列最左边的数字进行交换。

插入排序:从右侧的未排序的区域内取出一个数据,然后将它插入到已排序区域内合适的位置上。

其实是取出来未排序的数据,和已排序的数据进行比较。

堆排序:在堆中存储所有的数据,并按降序来构建堆。从降序排列的堆中取出数据时,会从最大的数据开始取,所以将取出的数据反序输出,排序完成。

归并排序:将序列分成长度相同的子序列,当无法在继续往下分时,就对子序列进行归并。

归并是指把两个排好序的子序列合并成一个有序序列,重复执行,直到所有子序列归并为一个整体为止。

快速排序:首先在序列中随机选择一个基准值(pivot),然后将出了基准值以外的数分为“比基准值小的数”和“比基准值大的数”,对基准值左右两个序列分别进行排序后,整体的排序便完成了。

[比基准值小的数] 基准值 [比基准值打的数]

注意:不断的在左和右基准值两侧,在选择出基准值,直到最后选出一位来,才停止结束。

本文来自网络,不代表软粉网立场,转载请注明出处:https://www.rfff.net/p/2369.html

作者: HUI

发表评论

您的电子邮箱地址不会被公开。

返回顶部