1:选择排序
1:找到数组中最小的元素与元素的第一个元素交换位置,在剩下的元素中找到最小的元素与第二个元素交换。循环下去
效率只和数组的大小有关
2:插入排序
1:打牌时候没摸一张牌就把它放在 它应有的位置上,排摸完时排序也就完成了
效率和数组是否接近有序 有关
3:希尔排序
1:对数组以一个步长间隔,区分为几个小的数组进行插入排序,步长依次递减,最后进行一个插入排序
这样一组数[ 13 14 94 33 82 25 59 94 65 23 45 27 73 25 39 10 ] 以步长为5开始进行排序
13 14 94 33 8225 59 94 65 2345 27 73 25 3910
再以3为步长进行排序:
10 14 7325 23 1327 94 3339 25 5994 65 8245
最后进行插入排序完成整个列表
效率无法准确的描述,是插入排序的升级版。效率高不少,这儿有两个地方会对效率产生影响
一是步长的选择。而是步长间的间隔 例: 以5,3,1 步长排序 或者 6,5,4,3,2,1 这样两种选择都会对排序造成影响。
转载请注明原文地址: https://ju.6miu.com/read-7191.html