内容正文:
浙江高中信息技术(主讲人:郭郭)
冒泡
排序
1
目录
Contents
1
基本思想
2
程序实现
3
4
课堂小结与课后练习
例题讲解
2
PART
01
基本思想
数组元素的最值、均值
数组元素的排序(冒泡法和选择法)
数组元素的插入和删除
3
1. 数组的排序
冒泡排序
基本思想:将相邻两数两两比较,次序不对时两数交换
排序步骤(以升序为例):
1)从第1个数开始比较相邻两数,使小数在前大数在后;
2)一轮比较完毕,大数沉底(定位),小数上浮一个位置;
3)n个数,经过n-1轮比较后完成排序
1. 数组的排序
冒泡排序P183
基本思想:将相邻两数两两比较,次序不对时两数交换
排序步骤(以升序为例):
1)从第1个数开始比较相邻两数,使小数在前大数在后;
2)一轮比较完毕,大数沉底(定位),小数上浮一个位置;
3)n个数,经过n-1轮比较后完成排序
a(1)
a(2)
a(3)
a(4)
a(5)
a(6)
…..
n=6
For j = 1 To n-1
If a(j)>a(j+1) Then t=a(j): a(j)=a(j+1): a(j+1)=t
Next j
For i = 1 To n–1 ‘外循环控制比较的轮数
Next i
n-i ‘内循环控制每轮的比较次数
例1: 用冒泡法对一组数按从小到大的顺序排列。
编程思路:
Option Base 1
定义1个动态变体数组并赋初值
Picture1中显示未排序的数
利用冒泡法进行排序
Picture2中显示已排序的数
For i = ________
For j = _______
If _________ Then
t=a(j): a(j)=a(j+1): a(j+1)=t
End If
Next j
Next i
Dim a() ,n%,i%,t% a()=Array(12,7,10,3,8,15,24,6)
For i = 1 To n
Picture2.Print a(i) ;
Next i
a(j)>a(j+1)
1 To n–1
1 To n-i
n=Ubound(a) ‘数组个数
For i = 1 To n