- 3
- 0
- 约3.76千字
- 约 8页
- 2018-11-11 发布于安徽
- 举报
WORD格式可编辑
专业知识分享
2018年浙江省高中信息技术选考排序和查找算法复习资料
排序算法
选择排序
概念:找出数组元素中最小(大)的数据,使它与第一个元素中的数据交换位置;在余下的元素中继续找最小(大)的元素,与第二个元素中的数据交换位置;……
比较的次数:n*(n-1)/2 交换的次数:小于n-1 趟数:n-1
(3)算法:将数组内的数据从小到大排序
for i=1 to n-1
for i=1 to n-1
min=i
for j=i+1 to n
if d(j)d(min) then min=j
next j
if mini then
k=d(min)
d(min)=d(i)
d(i)=k
end if
next i
(4)例题:
例题1:使用选择排序的方法对数据8、6、1、9、4从大到小排序,需要进行数据比较、数据互换的次数分别是( D )
A、4,5 B、10,2 C、3,3 D、10,4
例题2:小陈设计了一个带密码的趣味“4+1”小游戏,小陈告诉大家,该密码可以通过以下方法破解:将一组顺序是“3、2、8、5、9”的数码,在用选择排序法将这组数码从大到小的排序过程中,进行两次数据交换,即得。则该密码可能是( D )
A、98523 B、92853 C、98523 D、98253
例题3:以下表格中的数据为2009年快乐女生十进七淘汰赛的选手信息。某同学设计了一个Visual Basic程序用于选出晋及前七名的选手信息。程序界面如下图所示,单击“十进七晋级名单”,在list2里显示晋及前七名的选手信息。阅读、完善以下程序,并上机验证。完成下面问题:
Dim xs(1 To 10) As String
Dim df(1 To 10) As Intege
Private Sub Form_Load()
Dim i As Integer
xs(1) = 黄 英“ : df(1) = 88
xs(2) = 江映蓉“ : df(2) = 87
xs(3) = 李霄云“ : df(3) = 72
xs(4) = 刘惜君“ : df(4) = 77
xs(5) = 谈莉娜“ : d(5) = 61
xs(6) = 郁可唯“ : df(6) = 81
xs(7) = 潘虹越“ : df(7) = 48
xs(8) = 潘 辰“ : df(8) = 38
xs(9) = 李媛希“ : df(9) = 36
xs(10) = 曾轶可“: df(10) = 51
For i = 1 To 10
List1.AddItem xs(i) + + Str(df(i))
List1.AddItem
Next i
End Sub
Private Sub Command1_Click()
Dim j As Integer, k As Integer, m As Integer
Dim temp1 As String
Dim temp2 As Integer
For j = 1 To 9
m = j
For k = j + 1 To 10
If ① Then m= k
Next k
If j m Then
temp1 = xs(j): ② : xs(m) = temp1
temp2 = df(j): df(j) = df(m): df(m) = temp2
End If
Next j
For j = ③
List2.AddItem xs(j) + + Str(df(j))
List2.AddItem
Next j
End Sub
1)command1上单击事件处理过程中采用的算法是: 选择排序 (填:冒泡排序或选择排)2)command1上单击事件处理过程中采用的排序方式是: 升序 (填升序或降序)
3)程序中划线①处应填入 df(k) df(m)
4)程序中划线②处应填入 xs(j) = xs(m)
5)程序中划线③处应填入 1 to 7
冒泡排序
概念:把待排序的n个元素的数组看成是垂直堆放的一列数据,从最下面的一个元素起,自下而上地比较相邻两个元素中的数据,将较小的数据换到上面的一个元素中,重复这一过程,直到处理完最后两个元素中的数据,称为第一遍加工。然后对余下的n-1个元素重复上述处理过程,直
原创力文档

文档评论(0)