这节课我们来学习选择排序,教大家用选择排序的方法在scratch中同样来实现对一串任意长度的随机数列进行排序,排序方式默认为从小到大。
算法流程:
1、在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。
2、再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。
3、以此类推,直到所有元素均排序完毕。
第一步, 生成随机数列
同冒泡排序。
第二步,编写选择排序函数并调用
1、创建选择排序函数select
,并调用;定义变量i1
,i2
, temp并初始化,其中i1
,i2
用来控制循环次数,temp用来标记当前最小临时数的位置;
2、编写第一轮循环;从i2=i1+1
开始,将当前最小临时数temp与未排序数列中的数依次进行比较,如果数列中的某个数小雨前最小临时数,则更新temp的值为此时最小数的位置,直到数列的最后一个数。
3、如果temp不等于i1,则交换temp和i1位置上的数
4、编写第二轮循环,重复执行2.3、2.4,重复次数为列表个数;
5、新建变量numbercount和变量已完成来记录并显示排序完成情况;
完整代码是: