中国交通银行校园招聘考试选择题
2018年浙江省高中信息技术选考排序和查找算法复习资料 一、排序算法 1. 选择排序 (1)概念找出数组元素中最小(大)的数据,使它与第一个元素中的数据交换位置;在余下的元素中继续找最小(大)的元素,与第二个元素中的数据交换位置; (2)比较的次数n*n-1/2 交换的次数小于n-1 趟数n-1 (3)算法将数组内的数据从小到大排序 for i1 to n-1 mini for ji1 to n if djdmin then minj next j if mini then kdmin )例题(4从大到小排序,需要进行、4、61、9例题1使用选择排序的方法对数据8、 D )数据比较、数据互换的次数分别是(10,4 、、、10,2 C3,3 DA、4,5 B”小游戏,小陈告诉大家,该密41例题2小陈设计了一个带密码的趣味“”的数码,在用选择排、95、2、8、码可以通过以下方法破解将一组顺序是“3序法将这组数码从大到小的排序过程中,进行两次数据交换,即得。则该密码可 D )能是(98253 、、98523 D、A、98523 B92853 C年快乐女生十进七淘汰赛的选手信息。某2009以下表格中的数据为例题3程序用于选出晋及前七名的选手信息。程序界面如Visual 同学设计了一个Basic里显示晋及前七名的选手信息。list2下图所示,单击“十进七晋级名单”,在 阅读、完善以下程序,并上机验证。完成下面问题 Dim xs1 To 10 As String Dim df1 To 10 As Intege Private Sub _Load Dim i As Integer df1 88 英“獸ㄨ黄 df2 87 江映蓉“獸㈨ df3 72 李霄云“獸 df4 77 刘惜君“獸 d5 61 谈莉娜“獸 df6 81 獸郁可唯“ df7 48 潘虹越“獸 df8 38 辰“獸潘 df9 36 獸李媛希“ df10 51 獸ㄨ尠曾轶可“For i 1 To 10 Strdfi xsi List1.AddItem 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 xsj ② xsm temp1 temp2 dfj dfj dfm dfm temp2 End If Next j For j ③ List2.AddItem xsj Strdfj List2.AddItem \ Next j End Sub 1)command1上单击事件处理过程中采用的算法是 选择排序 (填冒泡排序或选择 排)2)command1上单击事件处理过程中采用的排序方式是 升序 (填升序或降序) 3)程序中划线①处应填入 dfk dfm 4)程序中划线②处应填入 xsj xsm 5)程序中划线③处应填入 1 to 7 2. 冒泡排序 1 概念把待排序的n个元素的数组看成是垂直堆放的一列数据,从最下面的一个元素起,自下而上地比较相邻两个元素中的数据,将较小的数据换到上面的一个元素中,重复这一过程,直到处理完最后两个元素中的数据,称为第一遍加工。然后对余下的n-1个元素重复上述处理过程,直至最后进行余下的两个数据的比较和交换。 (2)算法将数组内的数据从小到大排序 for i1 to n-1 (3)例题 for jn to i1 step -1 例题15位学生100米短跑的成绩(单位秒)如下表。若采用冒泡排序算if djdj-1 then 法对其进行排序,则第3趟的排序结果是( A ) kdj djdj-1 dj-1k A、12.6 12.813.512.613.3原始数14.2 14.2 13.3 12.8 B、13.5 12.6 13.313.514.212.812.6 13.3 12.8 13.3 12.8 12.6 14.2 13.5 14.2 13.5 趟、12.6 C12.8 14.2 14.2 12.612.8 13.5 13.3 13.5 13.3 、12.6 D12.8 13.5 14.2 13.3 例题2下表记录了6个数据排序的过程。分析表中数据可知,该排序采用的算法与排序方式分别为( C ) A、冒原始数据 65 57 59 44 45 69 泡排序、69 65 57 45 59 44 第1遍 降序69 45 57 65 44 2第遍 59 选、B择排69 45 65 3第遍 59 44 57 序、 降序C、冒泡排序、升序 D、选择排序、升序 例题3随机产生10个两位正整数,并对它们进行排序。用VB编写的程序运行界面如下图所示,请阅读并完善程序段,并上机验证。 Dim d1 to 10 as integer 定义一个一维数组d,用于存放10个正整数 Dim i As Integer As Integer Dim j As Integer, temp As Integer Private Sub Command1_Click 随机产生10个两位正整数 Randomize 随机数初始化 Li