浙教版高中信息技术 选修1 2.3 排序 .pptxVIP

浙教版高中信息技术 选修1 2.3 排序 .pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二单元 排序算法及程序实现;下表记录了6个数据的排序过程。分析表中数据可知,该排序采用的算 法与排序方式分别为?(  );排序是一种算法思想(对已有的一组数,经过一系列的加工处理后输出一组目标数)。;校园歌手打分;评委1;冒泡排序;冒泡排序是在一列数据中把较小(大)的数据逐次向上推移的一种排序技术。;(1)N个元素垂直堆放一列 (2)从最下面的一个元素起,自下而上比较相邻两个元素,将小的元素换到上面 (3)重复这一过程,直到处理完最后的两个元素 结果:第一遍加工结??,最小的元素会升到第一个元素的位置 对剩下的n-1个元素重复2-3步骤,这是第二遍加工,第二小的元素会上升到第二个元素的位置…… 但比较的数据会逐个减少,直至只剩下最后的两个元素的比较和交换。;冒泡排序的过程;冒泡排序的数据比较次数;冒泡排序的数据交换次数;有如下一组数据:27 166 85 36 73 127 159,利用冒泡排序进行从小到大排序,需要交换的次数是 A、5 B、6 C、7 D、8;冒泡排序算法的程序实现;冒泡排序的过程;变量分析,及过程归纳;(1)冒泡排序的代码如下: For i=1 To n-1   ??????n个数需要n-1次排序  For j=n To i+1 Step -1??????从后往前,两两比较,一直到第i+1个数   If a(j)a(j-1) Then ??????比较相邻的两个数    temp=a(j-1):a(j-1)=a(j):a(j)=temp??????小的在后面,则交换   End If  Next j Next i 从小到大排序,If语句中条件表达式为:a(j)a(j-1); 从大到小排序,If语句中条件表达式为:a(j)a(j-1)。;冒泡排序程序的实现可用双重FOR循环来实现,外层FOR循环控制是第几遍加工,内层FOR循环控制进行排序的数组元素下标的变化范围。 由于每趟加工完成后,进行排序的范围会发生变化(每趟减少一个),故内层FOR循环变量的下界由外层循环变量决定。; 例1????(2012浙江3月高考,3,3分)实现某排序算法的部分VB程序如下: For i=1 To 4  For j=5 To i+1 Step -1   If a(j)a(j-1) Then t=a(j):a(j)=a(j-1):a(j-1)=t  Next j Next i 在经过某一遍排序“加工”后,数组元素a(1)到a(5)的数据依次为“28,7 0,53,57,30”。则下一遍排序“加工”后数组元素a(1)到a(5)的数据应该 是?(  ) A.28,30,70,53,57  B.28,30,53,57,70 C.28,30,57,53,70  D.28,30,53,70,57;s=“” For i=1 to 3 For j=7 to i+1 step -1 If a(j)a(j-1) then k=a(j):a(j)=a(j-1):a(j-1)=k end if next j s=s+str(a(i)) Next I Text1.text=s 数组元素a(1)到a(7)的数据一次为3,9,1,5,8,6,2 ,经过该程序段加工后,文本框Text1中显示的内容是( ) A、1 2 3 B、9 8 6 C、3 9 1 D、8 6 2 ;采用冒泡排序算法对数组a中的5个数据“5,10,6,30,9”进行排序,部分程序如下: For i=1 to 4 For j=5 to i+1 step -1 If a(j)a(j-1) then End if Next j Next I 以上程序是以 方式 排序的,框内的语句共执行了 次。 ;冒泡算法的程序优化;用冒泡排序对4,5,6,3,2,1进行从小到大排序,第三遍加工后的状态为: A、4,5,3,2,1,6 B、4,3,2,1,5,6 C、3,2,1,4,5,6 D、2,1,3,4,5,6 ;自上而下的冒泡;For i=1 to 2 For j=1 to 6-i If a(j)a(j+1) then K=a(j):a(j)=a(j+1):a(j+1)=k End if Next j Next i 数组a(1)~a(6)的值依次为71,54,58,29,31,78,则最后结束为: A. 29,31,54,58,71,78 B. 78,71,58,54,31,29 C. 54,29,

文档评论(0)

gl5000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档