算法案例(第四课时).ppt
《算法案例(第四课时).ppt》由会员分享,可在线阅读,更多相关《算法案例(第四课时).ppt(9页珍藏版)》请在冰豆网上搜索。
算法案例(第四课时)排序的算法排序的算法将下面数字按由小到大的顺序排列将下面数字按由小到大的顺序排列8,3,2,5,9,6方法方法1:
S1:
比较第比较第2个数与第个数与第1个数的大小,并排序得个数的大小,并排序得3,8S2:
将第将第3个数与个数与S1中的数比较,插入适当的位置,得到中的数比较,插入适当的位置,得到2,3,8S3:
将第将第4个数与个数与S2中的数比较,并插入适当的位置,如中的数比较,并插入适当的位置,如此继续下去,直到把最后一个数插入到上一步已排好的数此继续下去,直到把最后一个数插入到上一步已排好的数列的合适位置为止,得到:
列的合适位置为止,得到:
2,3,5,82,3,5,8,92,3,5,6,8,9S4:
S5:
排序的算法排序的算法将下面数字按由小到大的顺序排列将下面数字按由小到大的顺序排列8,3,2,5,9,6方法方法1:
过过程程演演示示832596开始开始排第排第1次次排第排第2次次排第排第3次次排第排第4次次832596382596238596235896235896排第排第5次次235689排序的算法排序的算法将下面数字按由小到大的顺序排列将下面数字按由小到大的顺序排列8,3,2,5,9,6方法方法2:
S1:
用第用第1个数与第个数与第2个数比较,若前者小则两数不变,个数比较,若前者小则两数不变,否则,交换这两个数的位置。
否则,交换这两个数的位置。
S2:
按这样的原则,比较第按这样的原则,比较第2个数和第个数和第3个数,前者小个数,前者小则两数不变,否则,交换这两个数的位置则两数不变,否则,交换这两个数的位置直到比直到比完最后两个数。
(称为完最后两个数。
(称为“一趟一趟”)S3:
如果前一趟的比较中交换的次数为如果前一趟的比较中交换的次数为0,说明排序已,说明排序已完成,否则回到完成,否则回到S2。
根据题意,一趟后的结果是什么?
为什么说前一趟的比较中交换为0次时,排序完成?
3,2,5,8,6,9排序的算法排序的算法将下面数字按由小到大的顺序排列将下面数字按由小到大的顺序排列8,3,2,5,9,6请将每一趟的结果写出来请将每一趟的结果写出来第第1趟趟832596382596328596325896325896325869该趟中交换的次数为该趟中交换的次数为_次次4排序的算法排序的算法将下面数字按由小到大的顺序排列将下面数字按由小到大的顺序排列8,3,2,5,9,6请将每一趟的结果写出来请将每一趟的结果写出来第第2趟趟325869235869235869235869235689235689该趟中交换的次数为该趟中交换的次数为_次次2排序的算法排序的算法将下面数字按由小到大的顺序排列将下面数字按由小到大的顺序排列8,3,2,5,9,6请将每一趟的结果写出来请将每一趟的结果写出来第第3趟趟235689235689235689235689235689235689该趟中交换的次数为该趟中交换的次数为_次,次,0所以排序的结果为:
所以排序的结果为:
2,3,5,6,8,9练习:
练习:
1、根据前面的介绍阅读课本、根据前面的介绍阅读课本P32的例的例3,并完成图,并完成图1.3-6的填空的填空课后作业课后作业课本课本P38的习题的习题1.3第第2、3题题