文档介绍:粤教2003课标版选修1课题:选择排序算法西藏林芝市第一中学授课教师:谢海军·查看表格,找出体测总分排名第三的考生·排序:将杂乱无章的数据元素,通过一定的方法按关键字顺序排列的过程叫做排序。·排序方法:选择排序、冒泡排序、插入排序等。·选择排序:初始时在序列中找到最小(大)元素,放到序列的起始位置作为已排序序列。然后再从剩余未排序元素中继续寻找最小(大)元素,放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。活动二:举一反三,我最强49 27 65 97 76 12 38第1次第2次第3次第4次第5次第6次初始值12 27 65 97 76 49 3812 27 65 97 76 49 3812 27 38 97 76 49 6512 27 38 49 76 97 6512 27 38 49 65 97 7612 27 38 49 65 76 97活动三:开动脑筋,抽象算法·编写程序,将体测身高数据160,163,166,157,153按照由小到大的顺序进行输出显示。特别说明:每一个数字卡代表的是数组中的一个元素,它存储的数字可以改变,但它在元素间的相对位置是固定不变的。活动三:开动脑筋,抽象算法·第一次排序是从余下多少个元素中找到最小值?并放到数组的第几个位置?需要几次排序?·查找最小值通过记住它的什么信息?获取的信息如何保留?以便后期数据互换。·查找最小值通过什么方法来实现?·第一次排序通过几次比较找到最小值?·数组中数据互换位置,需要怎么处理?活动三:开动脑筋,抽象算法Fori=1To4Min=iForj=i+1To5Ifa(j)<a(Min)ThenMin=jEndIfNextjtemp=a(i)a(i)=a(Min)a(Min)=tempNexti1个位置变量1次数据交换1个嵌套活动四:mand1_Click()Dima(1To5)AsIntegerDimtempAsIntegera(1)=160a(2)=163a(3)=166a(4)=157a(5)=153Fori=1To4Min=iForj=i+1To5Ifa(j)<a(Min)ThenMin=jEndIfNextjtemp=a(i)a(i)=a(Min)a(Min)=tempNextiFori=1To5Printa(i);NextiPrintEndSub活动五:小试牛刀,巩固练习·现将数字串4,5,7,9,3进行选择排序,结合算法回答下面问题。·完成排序,外部循环共计执行()·第2次排序完成后数字串第5位的值为():小试牛刀,巩固练习·现将数字串4,5,7,9,3进行选择排序,结合算法回答下面问题。·请写出第3次排序完成后,数字串显示结果?