Phtyon编程【相邻比较的冒泡排序】.docx
《Phtyon编程【相邻比较的冒泡排序】.docx》由会员分享,可在线阅读,更多相关《Phtyon编程【相邻比较的冒泡排序】.docx(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Phtyon编程【相邻比拟的冒泡排序】如果按照得分高那么名次靠前的原那么,需要将io位选手的最终得 分按照从高到低进行排序,那么计算机是如何完成对选手成绩的排 序呢?在程序设计中,冒泡排序是比拟常见的一种排序算法。下面, 一起来探究该算法的实现过程。通过本节的学习,你将掌握以下技了解冒泡排序的基本概念。* 理解冒泡排序算法过程的执行过程。* 学会用冒泡排序进行数据的升序或降序排序。1 .冒泡排序算法的执行过程所谓冒泡排序,就是从初始位置开始,每次对相邻两个数据进 行比拟,如顺序无误那么保持位置不变,顺序错误那么交换位置,不断 进行下一次比拟,直至数据顺序调整完毕。(1)观察冒泡排序的基本过程。
2、以对9、8、3、1、2从小到大排序为例,两轮冒泡排序过程如 图所示。根据下列图,推演冒泡排序的全部过程。第一轮排序:当前序列:9, 8, 3, 1, 2第一次:8, 9, 3, 1, 2冤二次:& 3, 9, 1, 2 第三次:8, 3, 1, 9, 2第四次:8, 3, 1, 2, 9本次结果:8 3, 1, 2, 9第二轮排序:当前序列:8, 3, 1, 2, 9第一次:3, 8, 1, 2, 9第二次:3, 1, 8, 2, 9第三次:3, 1, 2, 8, 9本次结果:3, L 2, 8, 9讨论如何进行第3轮比拟呢?(2)分析冒泡排序的基本规律。观察并分析冒泡排序的规律,大家一起交流
3、提供。例如,排序时从数据某一端开始,对相邻数据进行两两比拟; 比拟后的数据根据排序规那么进行交换或保持原位置不变;如果有n 个数参与排序,第1轮比拟次数为n-1次,等等。讨论n个数进行冒泡排序,除第1轮比拟外,每轮比拟需要n-1次 吗?一共需要比拟多少轮?通过观察分析,我们会发现冒泡排序每一轮比拟结束后至少有 一个数到达相应位置。从上述例子来看,第1轮比拟结束后,最大 数9到达最右侧;第2轮比拟从第1个位置重新开始,结束后,次大 数8(本轮比拟中的最大数)到达从右侧J数第2个位置。依次类推, 完成数据排序。2 .编写冒泡排序程序进行实验通过使用双重循环,很容易实现冒泡排序的程序设计:用外层 循
4、环控制比拟轮次,用内层循环控制每轮内的数据比拟次数;每次 比拟后可显示比拟结果,每轮比拟后显示当前结果。通过排序实验 的过程数据,会直观地看出整个冒泡排序的过程。实验中,可用 “#”临时屏蔽每次比拟后的结果显示,直观观察所有轮次的比拟 过程。1 s = 9,8,7,6,53,3,2,1# 9个测试数据存储在s0-s8#控制比拟轮数# 9个测试数据存储在s0-s8#控制比拟轮数2 print(参与排序的数据:”,s)3 for k in range(0 (len(s) - 1):456789for i in range(0; (len(s) - k) - 1):# 每轮比拟次数if (si s(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 相邻比较的冒泡排序 Phtyon 编程 相邻 比较 冒泡 排序
限制150内