浙江高中信息技术排序和查找算法复习资料总结Word格式文档下载.docx
- 文档编号:15023811
- 上传时间:2022-10-26
- 格式:DOCX
- 页数:10
- 大小:190.81KB
浙江高中信息技术排序和查找算法复习资料总结Word格式文档下载.docx
《浙江高中信息技术排序和查找算法复习资料总结Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《浙江高中信息技术排序和查找算法复习资料总结Word格式文档下载.docx(10页珍藏版)》请在冰豆网上搜索。
>
ithen
k=d(min)
d(min)=d(i)
d(i)=k
endif
nexti
(4)例题:
例题1:
使用选择排序的方法对数据8、6、1、9、4从大到小排序,需要进行数据比较、数据互换的次数分别是(D)
A、4,5B、10,2C、3,3D、10,4
例题2:
小陈设计了一个带密码的趣味“4+1”小游戏,小陈告诉大家,该密码可以通过以下方法破解:
将一组顺序是“3、2、8、5、9”的数码,在用选择排序法将这组数码从大到小的排序过程中,进行两次数据交换,即得。
则该密码可能是(D)
A、98523B、92853C、98523D、98253
例题3:
以下表格中的数据为2009年快乐女生十进七淘汰赛的选手信息。
某同学设计了一个VisualBasic程序用于选出晋及前七名的选手信息。
程序界面如下图所示,单击“十进七晋级名单”,在list2里显示晋及前七名的选手信息。
阅读、完善以下程序,并上机验证。
完成下面问题:
Dimxs(1To10)AsString
Dimdf(1To10)AsIntege
PrivateSubForm_Load()
DimiAsInteger
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
Fori=1To10
List1.AddItemxs(i)+"
"
+Str(df(i))
List1.AddItem"
"
Nexti
EndSub
PrivateSubCommand1_Click()
DimjAsInteger,kAsInteger,mAsInteger
Dimtemp1AsString
Dimtemp2AsInteger
Forj=1To9
m=j
Fork=j+1To10
If①Thenm=k
Nextk
Ifj<
mThen
temp1=xs(j):
②:
xs(m)=temp1
temp2=df(j):
df(j)=df(m):
df(m)=temp2
EndIf
Nextj
Forj=③
List2.AddItemxs(j)+"
+Str(df(j))
List2.AddItem"
1)command1上单击事件处理过程中采用的算法是:
选择排序(填:
冒泡排序或选择排)2)command1上单击事件处理过程中采用的排序方式是:
升序(填升序或降序)
3)程序中划线①处应填入df(k)>
df(m)
4)程序中划线②处应填入xs(j)=xs(m)
5)程序中划线③处应填入1to7
2.冒泡排序
(1)概念:
把待排序的n个元素的数组看成是垂直堆放的一列数据,从最下面的一个元素起,自下而上地比较相邻两个元素中的数据,将较小的数据换到上面的一个元素中,重复这一过程,直到处理完最后两个元素中的数据,称为第一遍加工。
然后对余下的n-1个元素重复上述处理过程,直至最后进行余下的两个数据的比较和交换。
(2)算法:
forj=ntoi+1step-1
d(j-1)then
k=d(j)
d(j)=d(j-1)
d(j-1)=k
endif
(3)例题:
5位学生100米短跑的成绩(单位:
秒)如下表。
若采用冒泡排序算法对其进行排序,则第3趟的排序结果是(A)
原始数据
14.2
13.5
12.6
13.3
12.8
第1趟
第2趟
第3趟
第4趟
A、12.612.813.314.213.5B、12.612.813.313.514.2
C、12.612.814.213.513.3D、12.612.813.514.213.3
下表记录了6个数据排序的过程。
分析表中数据可知,该排序采用的算法与排序方式分别为(C)
65
57
59
44
45
69
第1遍
run跑ranrun第2遍
spit吐出spat/spitspat/spit第3遍
hear听到heardheard45
broadcast播放broadcastbroadcast57
melt融化meltedmelted/molten65
overcome克服overcameovercome69
动词原形中文意思过去式过去分词……
read读readread……
spend花费spentspent……
hear听到heardheard
A、冒泡排序、降序B、选择排序、降序
C、冒泡排序、升序D、选择排序、升序
随机产生10个两位正整数,并对它们进行排序。
用VB编写的程序运行界面如下图所示,请阅读并完善程序段,并上机验证。
Dimd(1to10)asinteger'
定义一个一维数组d,用于存放10个正整数
DimiAsIntegerAsInteger
DimjAsInteger,tempAsInteger
PrivateSubCommand1_Click()'
随机产生10个两位正整数
Randomize'
随机数初始化
List1.Clear'
原始数据清空
d(i)=int(Rnd*90)+10
List1.AddItemStr(d(i))'
将数据显示到原始数据列表中
Next
PrivateSubCommand2_Click()‘对10个两位正整数进行排序
List2.Clear'
将排序后的列表数据清空
Fori=1To9
Forj=10toi+1step-1
Ifd(j)>
d(j-1)Then
temp=d(j):
d(j)=d(j-1):
d(j-1)=temp
EndIf
Nextj
Nexti
List2.AddItemStr(d(i))'
在列表2中显示排序后的数据
3.选择排序和冒泡排序对比:
若数组d里有n个待排序的数据,分别用冒泡法和选择法对此进行排序,试填充下表中的数据。
2、查找算法
1.顺序查找
从数组的第一个数据开始,逐个将数据与给定的值进行比较。
若某个数据和给定的值相等,则查找成功,输出所查数据的位置;
反之,查找不成功,输出“数据不存在于此数组中”
2.对分查找
前提:
数组中被查找的数据必须是有序的
基本思想:
首先将查找的数据与有序数组内处于中间位置的数据进行比较,如果两者相等,则查找成功;
否则根据数组元素的有序性,就可确定该数据应该在数组的前半部分还是后半部分继续进行查找。
在新确定的范围内,继续按上述方法进行查找,直到获得最终结果。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 浙江 高中 信息技术 排序 查找 算法 复习资料 总结