网站大量收购独家精品文档,联系QQ:2885784924

Python少儿编程 基础篇 4-神奇的排序 课件 .pptx

Python少儿编程 基础篇 4-神奇的排序 课件 .pptx

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Python少儿编程 基础篇公开课 优质课 适用如遇课件中视频、音频无法正常播放,请在网站联系上传者索取完整版本。如需与课件配套的教学设计、随堂练习,请与上传者联系索取。 Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. 少儿编程课 神奇的排序 增强运算符/=-=*=+=a=1 a/=1 print(a)a=1 a-=1 print(a)a=1 a*=1 print(a)a=1 a+=1 print(a) 双重循环语句for 变量1 in 可迭代内容: 循环体1… for 变量2 in 可迭代内容: 循环体2…for x in range(1,10): line= for y in range(1,x+1): line += str(y)+*+str(x)+=+str(x*y)+ print(line) 排序问题 按大小顺序排列数字利用循环生成一个有5个数字的列表。2. 将数字按照从小到大的顺序排列例如:列表中的数字为: [ 83, 20, 51, 82, 55 ],排序后的数字为: [ 20, 51, 55, 82, 83 ] 按大小顺序排列数字排序需要进行多轮,在每一轮排序中都会挑选出候选数字中最大的一个,放到本轮排序所有数字的最后。 第一轮排序待排序的数字为全部5个数字,比较时采用两两比较法。两个数字中,如果左边数字大于右边数字,则两个数字互换;如果左边数字不大于右边数字,则不互换位置。第一轮第一次比较[20, 83, 51, 82, 55 ],因为左侧的83大于20,所以两者交换,此时数字顺序为:[20, 83, 51, 82, 55 ]第一轮第二次比较[20, 83, 51, 82, 55 ],因为左侧的83大于51,所以两者交换,此时数字顺序为:[20, 51, 83, 82, 55 ]第一轮第三次比较[20, 51, 83, 82, 55 ],因为左侧的83大于82,所以两者交换,此时数字顺序为:[20, 51, 82, 83, 55 ]第一轮第四次比较[20, 51, 82, 83, 55 ],因为左侧的83大于55,所以两者交换,此时数字顺序为:[20, 51, 82, 55, 83 ] 第二轮排序经过了第一轮排序后,我们已经把5个数字中最大的数字放到了最后,第二轮待排序的数字为剩下的4个数字。比较时继续采用两两比较法。第二轮第一次比较[20, 51, 82, 55, 83 ],因为左侧的20不大于51,所以两者不交换第二轮第二次比较[20, 51, 82, 55, 83 ],因为左侧的51不大于82,所以两者不交换第二轮第三次比较[20, 51, 82, 55, 83 ],因为左侧的82大于55,所以两者交换,此时数字顺序为:[20, 51, 55, 82, 83 ] 第三轮排序经过了第二轮排序后,我们已经把5个数字中最大的2个数字放到了最后,第三轮待排序的数字为剩下的3个数字。比较时继续采用两两比较法。第三轮第一次比较[20, 51, 55, 82, 83 ],因为左侧的20不大于51,所以两者不交换第三轮第二次比较[20, 51, 55, 82, 83 ],因为左侧的51不大于55,所以两者不交换 第四轮排序经过了第三轮排序后,我们已经把5个数字中最大的3个数字放到了最后,第四轮待排序的数字为剩下的2个数字。比较时继续采用两两比较法。第四轮第一次比较[20, 51, 55, 82, 83 ],因为左侧的20大于51,所以两者不交换最终,5个数字四轮比较就可以得到最终的结果[ 20, 51, 55, 82, 83 ],每一轮两两比较的次数各不相同,每一轮比较次数都在减少。 代码实现from random import randint m=[] for x in range(5): #生成有5个随机数的列表 n=randint(1,100) m.append(n) print(m) #打印生成的列表 for x in range(4): #需要4轮交换 for y in range(4-x): #每轮交换的次数都在减少 if m[y]m[y+1]: #如果左侧大

文档评论(0)

***** + 关注
实名认证
内容提供者

教师资格证持证人

如有问题,请于后台留言联系上传者解决(加微信wkl436858),如文档无法编辑,课件中音视频无法播放等。如遇课件中视频无法播放,请留言或私信,一定予以解决。

版权声明书
用户编号:6143101132000005
领域认证该用户于2024年07月27日上传了教师资格证

1亿VIP精品文档

相关文档