对分查找课后巩固练习.docx

上传人:博****1 文档编号:551672940 上传时间:2024-02-02 格式:DOCX 页数:3 大小:32.69KB
返回 下载 相关 举报
对分查找课后巩固练习.docx_第1页
第1页 / 共3页
对分查找课后巩固练习.docx_第2页
第2页 / 共3页
对分查找课后巩固练习.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《对分查找课后巩固练习.docx》由会员分享,可在线阅读,更多相关《对分查找课后巩固练习.docx(3页珍藏版)》请在金锄头文库上搜索。

1、对分查找课后巩固练习1、用对分查找从数列8、11、12、15、17、21、30、35、80中查找数据15,则依次访问的数据为( )A、17111215 B、171215 C、171115 D、171211152、某高校学籍管理系统软件有2万个学生的电子档案(已按学籍号排序),假设从中取出一条记录并与待查项进行比较所花时间为8毫秒,则用对分法在该系统中查找任意一位学生档案最多花费的时间约为( )A、160毫秒 B、80毫秒 C、10毫秒 D、120毫秒3、某对分査找算法的VB程序段如下:i = 1: j = 9: n = 0key = Val(Textl.Text)Do While i = jn

2、 = n + 1m = Fix(i + j) / 2)If key = d(m) Then Exit Do Exit Do表示退出循环If key d(m) Then j = m - 1 Else i = m + 1Loop数组元素d(1)到d(9)的值依次为“7,12,18,25,39,58,61,72,86”。若该程序段运行结束后,n的值为2,则key的值是( )A、39 B、18或61C、18或72D、12或614、某对分査找算法的VB程序段如下:i = 1: j = 7: s = key = Int(Rnd * 100)Do While i = j m = (i + j) 2 If k

3、ey = a(m) Then s = s + M: Exit Do Exit Do 表示退出循环 ElseIf key a(m) Then j = m - 1: s = s + L Else i = m + 1: s = s + R End IfLoopText1.Text = s数组元素a(1)到a(7)的值依次为“24,35,38,41,45,69,78”。若该程序段执行后,文本框Text1中显示的内容可能是A. RL B. LMRC. RLRD. LRLM5、数组a为一组正整数,奇数在前,偶数在后。奇数与偶数已分别按升序排序。依据对分查找思想:设计一个在数组a中查找数据Key的程序。实现

4、该功能的VB程序段如下:i = 1: j = 10Key = Val(Text1.Text)Do While i j Then s = 没有找到! Else s = 位置: + Str(m)Text2.Text = s上述程序中方框处可选语句为:i = m + 1j = m - 1If Key a(m) Then j = m - 1 Else i = m + 1则(1)、(2)、(3)处语句依次是A、B、C、D、6、编写VB程序,实现如下功能:在文本框Text1中输整数x,单击“查找删除”按钮Command1,在数组a(从小到大排列并显示在标签Label1中)中查找该数。若找到,则从数组a中删

5、除该数(该数后的数组元素都往前移一位),并在标签Label2中显示删除后的结果(运行效果如图所示);否则在标签Label2中显示“该数没有找到”。Dim a(1 To 10) As IntegerPrivate Sub Form_Load()Dim i As IntegerRandomizea(1) = Int(Rnd() * 10 + 1)Label1.Caption = Str(a(1)For i = 2 To 10a(i) = a(i - 1) + Int(Rnd() * 10 + 1) Label1.Caption = Label1.Caption + Next iEnd SubPri

6、vate Sub Command1_Click()Dim i As Integer, j As Integer, m As Integer, k As IntegerDim x As Integer, f As Booleanx = Val(Text1.Text)i = 1: j = 10: f = FalseDo While m = If a(m) = x Then f = TrueElseIf Then i = m + 1 Else j = LoopIf f = True Then For k = m To 9 该数据后面的元素都往前移一位,思考如何移位 Next kLabel2.Caption = For k = 1 To 9 逐个显示删除后的数组元素Label2.Caption = Label2.Caption + Str(a(k) + Next kElseLabel2.Caption = 该数没有找到End IfEnd Sub

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号