冒泡排序系列课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
England, France , American , Italy, Japan, China, Hongkong
1 2 3 4 5 6 7
England France American Italy Japan China Hongkong
A(5)<a(4),交换
第 三 轮 冒 泡 排 序 过 程
1 2 3 4 5
A(5)<a(4),交换
小结:如果要对有5个元素的数组进行排序,那么 1、要进行________轮冒泡 4
2、第一轮冒泡的时候它进行比较的范围 A(2) 与a(1) A(5)与a(4) 是什么从_________到________
第2轮冒泡的时候它进行比较的范围 A(n)与a(n-1) A(5)与a(4) A(3) 与a(2) 是什么从_________到________ 第3轮冒泡呢?它进行比较的范围 A(n)与a(n-1) 是什么从_________到________ A(5)与a(4) A(4)与a(3)
第i轮冒泡呢?它进行比较的范围 是什么从_____ 到________ A(5)与a(4) A(i+1)与a(i) A(n)与a(n-1)
A(2)<a(1),交换 A(3)<a(2),交换 A(4)<a(3),交换 A(5)>a(4)保持不变
第 二 轮 冒 泡 排 序 过 程
1 2 3
A(3)<a(2),交换
4 5
A(4)<a(3),交换
A(5)>a(4)保持不变
第 三 轮 冒 泡 排 序 过 程
1 2 3 4 5
A(4)>a(3),不变
第2轮冒泡的时候它进行比较的范围 A(5)与a(4) A(3) 与a(2) 是什么从_________到________ 第3轮冒泡呢?它进行比较的范围 是什么从_________到________ A(5)与a(4) A(4)与a(3)
第4轮冒泡呢?它进行比较的范围 A(5)与a(4)到________ A(5)与a(4) 是什么从_____
….. …..
n-1 For i= 1 to 4 For j= n5 to i+1 step -1 if a(j)>a(j-1) then t=a(j):a(j)=a(j-1):a(j-1)=t end if Next j Next i
课后小结:
1、冒泡排序:每次从最下面的元素开始, 通过逐次往上比较,将较小的数像上推移
Next i
a(j)—a(j-1) a(j)百度文库a(j-1) a(j)—a(j-1) a(j)—a(j-1) a(5)—a(4) a(5)—a(4) a(5)—a(4) a(5)—a(4) a(4)—a(3) a(4)—a(3) a(4)—a(3) a(3)—a(2) a(3)—a(2)
比较两个 数,如果 后面的数 比前面的 小,则交 换
a(2)—a(1)
冒泡流程图1
j=5
开始
i=1
J>=i+ j? 1 y
n
i<=4
n
A(j)<A(j-1)
y 两数交换
y
n
J=j-1
冒泡
i=i+1
小结:如果要对有n个元素的数组进行排序,那么 n-1 1、要进行________轮冒泡 4 2、第一轮冒泡的时候它进行比较的范围 A(5)与a(4) A(n)与a(n-1) A(2) 与a(1) 是什么从_________到________
数 组 2 变 量 3 a
4 5
1
经典算法之
冒 泡 排 序
授课人:吴素萍
冒泡排序:把较小的数据逐次向上推移的 一种排序技术。
如何实现将较小 数逐次从下向上 推移呢?
从最后一个元素起,依次比较相邻的两个 元素中的数据,将较小的数据调换到上面。
第 一 轮 冒 泡 排 序 过 程
1 2 3 4 5
冒泡流程图1
j=5
开始
j?
i=1
n
y
i<=4
n
A(j)<A(j-1)
y 两数交换
y
n
j=j-1
冒泡
i=i+1
For i= 1 to 4
i=4 i=3 i=2 i=1
i=1 i=2 i=3 i=4
j=5 to 2 j=5 to 3 j=5 to 4 j=5 to 5
i+1 5 step -1 4 2 For j=5 to 3 if a(j)<a(j-1) then t=a(j):a(j)=a(j-1):a(j-1)=t end if Next j
2、如果有n个数组的元素进行排序,则要进行 n-1趟冒泡 第一趟冒泡要经过n-1次比较 第二趟冒泡要经过n-2次比较 ……. 第n-1趟冒泡要经过1次比 较
总计:(n-1)+(n-2)+(n-3)+………+2+1
作业一:今年北京奥运会有七个国家或地区 参加,开幕式按照国家或地区英文名从小到大 的次序出场,已知这七个国家或地区的名字, 请写出经前三趟冒泡后出场的次序表。