选择排序配套浙教版.ppt

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
西安电子科技大学计算机学院 - School of Computer Science Engineering, Xidian University, China * 简单选择排序 选择排序方法 1 2 3 4 5 6 7 43 18 9 13 55 7 43 以7个元素为例说明选择排序 位置1~位置7的元素初始排列如下所示 选择排序方法 1 2 3 4 5 6 7 43 18 9 13 55 7 43 第一趟:从7个元素中选出最小者,将其换入位置1,过程为:min为最小元素的位置序号(初值为1),令a(min)表示最小元素的值(初值为位置1的元素),逐一比较,找出最小元素及其位置 位置6的元素最小 交换 1 2 3 4 5 6 7 7 43 9 13 55 43 43 选择排序方法 1 2 3 4 5 6 7 7 18 9 13 55 43 43 第二趟:从6个元素中选出最小者,将其换入位置2,过程为:min为最小元素的位置序号(初值为2),令a(min)表示最小元素的值(初值为位置2的元素),逐一比较,找出最小元素及其位置 位置3的元素最小 交换 1 2 3 4 5 6 7 7 9 18 13 55 43 43 选择排序方法 1 2 3 4 5 6 7 7 9 18 13 55 43 43 第三趟:从5个元素中选出最小者,将其换入位置3,过程为:min为最小元素的位置序号(初值为3),令a(min)表示最小元素的值(初值为位置3的元素),逐一比较,找出最小元素及其位置 位置4的元素最小 交换 1 2 3 4 5 6 7 7 9 13 18 55 43 43 选择排序方法 1 2 3 4 5 6 7 7 9 13 18 55 43 43 第四趟:从4个元素中选出最小者,将其换入位置4,过程为:min为最小元素的位置序号(初值为4),令a(min)表示最小元素的值(初值为位置4的元素),逐一比较,找出最小元素及其位置 位置4的元素最小 交换 1 2 3 4 5 6 7 7 9 13 18 55 43 43 选择排序方法 1 2 3 4 5 6 7 7 9 13 18 55 43 43 第五趟:从3个元素中选出最小者,将其换入位置5,过程为:min为最小元素的位置序号(初值为5),令a(min)表示最小元素的值(初值为位置5的元素),逐一比较,找出最小元素及其位置 位置6的元素最小 交换 1 2 3 4 5 6 7 7 9 13 18 43 55 43 选择排序方法 1 2 3 4 5 6 7 7 9 13 18 43 55 43 第六趟:从2个元素中选出最小者,将其换入位置6,过程为:min为最小元素的位置序号(初值为6),令a(min)表示最小元素的值(初值为位置6的元素),逐一比较,找出最小元素及其位置 位置7的元素最小 交换 1 2 3 4 5 6 7 7 9 13 18 43 43 55 选择排序方法 1 2 3 4 5 6 7 43 18 9 13 55 7 43 以7个元素为例,经过6趟选择,将元素排列有序 排序 1 2 3 4 5 6 7 7 9 13 18 43 43 55 1. 在a(i)、a(i+1)、…a(n)中通过比较找到存放最小数的位置t 的代码实现 ‘最小数存放位置min预设为I(i)号位置 ‘从2(也就是i+1)号到n号的元素为止,每个元素与min号元素比较,如果有哪个元素比min号元素小,那么用变量min记录这个元素号。 ‘用变量j来表示当前用以比较的元素的位置。 For j = i + 1 To n If d(j) d(t) Then t = j Next j min = i 选择排序算法 7个元素进行选择排序时,需要六趟,用i表示趟数 i ← 1 i=6? 结束 Y i ← i+1 N 进行第i趟选择排序 开始 选择排序算法 7个元素进行选择排序时,需要六趟,用i表示趟数 i ← 1 i=6? 结束 Y i ← i+1 N min表示最小元素的位置 min ← i, j ← i+1 比较a(min)和a(j) 如果a(j)a(min)则令min= j j ← j+1 N Y 交换a(min)和a(i) 开始 j=7? 选择排序算法 i ← 1 i=6? 结束 Y i ← i+1 N min← i, j ← i+1 比较a(min)和a(j) 如果a(j)a(min)则令min= j j ← j+1 N Y 交换a(min)和a(i) 开始 j=7? For i = 1 To n - 1 min = i For j = i + 1 To n If a(j) a(min) Then min = j

文档评论(0)

2232文档 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档