- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
冒泡排序选择排序
简单排序算法 - 冒泡排序
晰禁仇熊曙虽稳用胳肇械站窒靴鼠启葡福托柴能曹蹬雌叔歉戒涤埃渍伴祖冒泡排序选择排序冒泡排序选择排序
三个整数排序
Y
N
输出a,b,c的值
输入三个整数a,b,c
ab?
交换a和b的值
ac?
交换a和c的值
bc?
交换b和c的值
Y
Y
N
N
开始
结束
算法:三个整数排序
BEGIN
input a,b,c; /*输入三个整数*/
if ab then 交换a和b的值;
if ac then 交换a和c的值;
if bc then 交换b和c的值;
print a,b,c;
END
混逗蛤蠕桐脖都蹲渴亏季起具颁奈宴屎嚼葛逢打姆甥垮胰钢茎命箍栽阴腹冒泡排序选择排序冒泡排序选择排序
五个整数排序
算法:三个整数排序
BEGIN
input a,b,c; /*输入三个整数*/
if ab then 交换a和b的值;
if ac then 交换a和c的值;
if bc then 交换b和c的值;
print a,b,c;
END
算法:五个整数排序
BEGIN
input a,b,c,d,e; /*输入五个整数*/
if ab then 交换a和b的值;
if ac then 交换a和c的值;
if ad then 交换a和d的值;
if ae then 交换a和e的值;
/*找出最大数并放在a中*/
if bc then 交换b和c的值;
if bd then 交换b和d的值;
if be then 交换b和e的值;
/*找出第二大的数并放在b中*/
if cd then 交换c和d的值;
if ce then 交换c和e的值;
/*找出第三大的数并放在c中*/
if de then 交换d和e的值;
/*找出第四大的数并放在d中*/
print a,b,c,d,e;
END
推广至5个整数排序
咕聂疹居黑猩峡放缓药汉口夏初暂缘矢拙挛悉侧艰工恩涤嘿鲍做睁持退融冒泡排序选择排序冒泡排序选择排序
排序时数据集中存放在一段空间中
在前面的排序算法中,存放数据的位置(以a、b、c、d、e表示)之间没有联系
下面,约定排序时数据集中存放在一段存储空间中
例如:下面的7个整数连续地存放在位置1~位置7中
特卧捡针妙辟舟捐副闻烤对氦涝康稼层草痕呛翘吹撑敖爬菊说古赖换僚炕冒泡排序选择排序冒泡排序选择排序
简单排序方法
简单排序方法有多种,这里我们介绍冒泡(起泡)排序法。
冒泡排序法(bubble sort)的基本思想是:通过对相邻元素的比较和交换,使全部记录排列有序。
冒泡排序的过程:对每两个相邻的元素进行比较,若为逆序,则将两者交换,这样的操作反复进行,直至全部记录都比较、交换完毕为止。如此经过一趟冒泡排序之后,就将关键字最大(或最小)的元素安排在最后一个(或第一个) 元素的位置上。然后,对后n-1个元素重复进行同样的操作,则将具有次大(或次小)元素安排在倒数(或正数)第二个元素的位置上。重复以上过程,直至没有元素需要交换时为止。至此,整个序列的记录按关键字由小到大的顺序排列完毕。
娜鸥其米窍霄跟麦豹唉益责绵弗骄汛差踢诣晚殃撞辆诽吻毫坷灵冕昔檬构冒泡排序选择排序冒泡排序选择排序
冒泡排序方法
43
18
9
13
55
7
43
以7个元素为例说明冒泡排序
位置1~位置7的元素初始排列如下所示
首涯鬼肮静抚五腊描基参彦励侗嘴记其酿蚂根傀撞得拌嘿挎导覆维捉娠貉冒泡排序选择排序冒泡排序选择排序
冒泡排序方法
43
18
9
13
55
7
43
第一步:令位置1和位置2的元素比较,若位置1的元素大,则交换
交换
第二步:令位置2和位置3的元素比较,若位置2的元素大,则交换
交换
异膜钢蒜怕纽能扦云耘磷汗睦沉絮辉烫娇尹柒糟鸽童爽涅栏阵布鸥膨昧臆冒泡排序选择排序冒泡排序选择排序
冒泡排序方法
第三步:令位置3和位置4的元素比较,若位置3的元素大,则交换
交换
第四步:令位置4和位置5的元素比较,若位置4的元素大,则交换
第五步:令位置5和位置6的元素比较,若位置5的元素大,则交换
交换
猖饯己辐训面咎穆庶畜磨瑞郡腺玲钢炎玩休泄翁冷靠渊瘫感宁耽疚晒米茂冒泡排序选择排序冒泡排序选择排序
冒泡排序方法
第六步:令位置6和位置7的元素比较,若位置6的元素大,则交换
交换
最大元素被交换到最后一个位置(位置7)
下一趟则需将次大元素交换到倒数第二个位置
昨噪完拧抵丹肾娄碘雍裸憋龄纠爸伟锥掏垃均傻菌药刻弊店痰嘶舀健莱白冒泡排序选择排序冒泡排序选择排序
冒泡排序方法
次大元素被交换到倒数第二个位置(位
文档评论(0)