资源简介 绝密★考试结束前2023学年第一学期杭州市高三年级教学质量检测技术试题卷第一部分 信息技术(共 50 分)一、选择题(本大题共 12 小题,每小题 2 分,共 24 分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)1.下列有关数据和信息的说法,正确的是A.计算机中的数据以二进制的形式存储 B.人们观看在线影视时,点播的视频是信息C.信息本身会因为被别人获取而发生损耗 D.大数据的数据总量越大,价值密度就越高【答案】A【解析一】本题考查数据和信息的相关知识。A.计算机中的数据以二进制的形式存储,是正确的;选项 B.人们观看在线影视时,点播的视频是数据,故选项 B是不正确的;选项 C.信息本身不会因为被别人获取而发生损耗,故选项 C是不正确的;选项 D.大数据的数据总量越大,价值密度就越低,故选项 D是不正确的。所以答案是 A。【解析二】本题考查数据、信息、大数据的相关知识。视频是数据,是信息的载体,选项 B错误;信息是可以共享的,不会发生损耗,选项 C错误;大数据的价值密度小,选项 D错误。2.下列关于进制与信息编码的说法,不.正.确.的是A.最大的两位十六进制数值是 FFHB.将商品信息转换为条形码的过程属于编码C.声音数字化过程中的量化位数越大,保真度越好D.ASCII码用 7位二进制进行编码,十进制范围为 1~128【答案】D【解析一】本题考查进制和编码的相关知识。ASCII码用 7位二进制进行编码,十进制的范围是 0~127,选项 D的说法错误。【解析二】本题考查进制与信息编码的相关知识。选项 ABC都是正确的;选项 D.ASCII码用 7位二进制进行编码,十进制范围为 0~127,故选项 D是不正确的。所以答案是 D。3.下列关于人工智能的说法,正确的是A.人工智能以机器为载体,模仿、延伸和扩展人类智能B.人工智能具有强大的存储、记忆和搜索功能,不会出错C.符号主义需要手工构造知识库,属于数据驱动的智能方法高三技术 试题卷 第 1 页(共 14 页)D.语音识别系统需要大量数据进行模型训练和测试,故无法识别实时语音【答案】A【解析一】本题考查人工智能的相关知识。人工智能是有可能出错的,选项 B错误;符号主义不是数据驱动的智能方法,选项 C错误;语音识别系统可以识别实时语音,选项 D错误。【解析二】本题考查人工智能的相关知识。选项 A.人工智能以机器为载体,模仿、延伸和扩展人类智能,是正确的;选项 B.人工智能具有强大的存储、记忆和搜索功能,也有可能出错,故选项 B是不正确的;选项 C.符号主义需要手工构造知识库,数据驱动属于联结主义,故选项 C是不正确的;选项 D.语音识别系统需要大量数据进行模型训练和测试,也能识别实时语音,故选项 D是不正确的。所以答案是 A。阅读下列材料,回答第 4至 5题。某校学生考勤信息系统通过移动无线考勤机(支持刷卡、刷脸等识别方式)进行考勤,家长可在手机 APP上进行学生请假申请,班主任审批之后,在校学生出校门时在考勤机上进行请假信息确认,离校后班主任和家长手机 APP上实时收到学生的离校信息。在该系统的网页管理后台可以按班、按月对请假等数据进行查询和统计。4.结合材料,下列有关该信息系统说法不.正.确.的是A.学校老师、家长和学生都是该信息系统的用户B.考勤机可移动使用,说明该信息系统不受外部环境的制约C.通过管理后台可查看当天的请假情况,说明该信息系统具有数据查询功能D.家长可随时在 APP上发起请假申请,体现了系统跨越时空限制、服务随时随处的优势【答案】B【解析一】本题考查信息系统的相关知识。信息系统对外部环境具有依赖性,选项 B的说法错误。【解析二】本题考查信息系统的相关知识。选项 ACD都是正确的;选项 B.考勤机可移动使用,但是该信息系统可能受其他外部环境的制约,故选项 B是不正确的;所以答案是 B。5.为了加强隐私保护和信息安全防护,下列说法不.正.确.的是A.晚上可以关闭防火墙,节约资源B.采用磁盘阵列、异地容灾等手段可以提高数据安全C.家长通过预留的手机号码登录 APP属于用户身份认证D.学生人脸、家长手机号码等都属于个人敏感信息,应做好隐私保护【答案】A【解析一】本题考查信息及信息系统安全的相关知识。因为信息系统的服务器是一直在运行,所以如果晚上关闭防火墙就无法保证系统晚上的安全,选项 A错误。高三技术 试题卷 第 2 页(共 14 页)【解析二】本题考查信息安全的相关知识。选项 A.晚上也不可以关闭防火墙,故选项 A是不正确的;选项 BCD都是正确的。所以答案是 A。6.下列关于网络技术的说法,正确的是A.网络仅由传输介质和网络互连设备组成B.按照网络的覆盖范围分类,因特网属于城域网C.网络中可以资源共享的仅是网络中的硬件资源D.网络中传输信息都需要遵守网络协议【答案】D【解析一】本题考查网络的相关知识。网络是由计算机系统、数据通信系统、网络软件和网络协议组成的,选项 A错误;因特网属于广域网,选项 B错误;网络中可以共享的资源有硬件、软件和数据,选项 C错误。【解析二】本题考查网络技术的相关知识。选项 A.网络不仅由传输介质和网络互连设备组成,故选项 A是不正确的;选项 B.按照网络的覆盖范围分类,因特网属于广域网,故选项 B是不正确的;选项 C.网络中可以资源共享的是网络中的硬件资源,还有软件资源、数据资源,故选项 C是不正确的;选项 D.网络中传输信息都需要遵守网络协议,是正确的;所以答案是 D。7.某算法的部分流程图如第 7题图所示,执行这部分流程,若输入 i的值为序列[2,3,4,5]中的随机数,则下列说法正确的是第 7题图A.变量 c的最大值为 11 B.“a>0 ”至少执行 5次C.程序结束时变量 a一定等于 0 D.只能使用 while语句实现循环结构【答案】B【解析一】本题考查流程图阅读。阅读流程图可知,变量 c用于记录循环次数,变量 a的初始值为 20,若要 c最大,则每次 a-i中的 i值要最高三技术 试题卷 第 3 页(共 14 页)小,让 i=2,最多循环 10次,故 c最大值为 10,A选项错误;当 i取最大值 5时,循环次数最少,为 4次,判断框执行 5次,故 B选项正确;a的最终值取决于最后一次 i的值,可能为负数,故 C选项错误;循环结构可以用 for语句实现,因为循环最多执行 10次,中途退出可用 break语句实现,故 D选项错误。【解析二】本题考查流程图的相关知识。A,要使得 c最大,则 a一直减 2,一共减了 10次,因此 c是 10;C,最终 a小于等于 0;D,可以使用for语句搭配 break实现8.某二叉树的树形结构如第 8题图所示,后序遍历结果为“WUSVTR”,则该二叉树的前序遍历结果为第 8题图A.RSTUVW B.RTSVUW C.RTSUWV D.RSUWTV【答案】D【解析一】本题考查二叉树的遍历方式。根据二叉树的后序遍历,左子树-右子树-根节点的顺序,可将后序遍历结果填入第 8题图,得出如图所示二叉树,其前序遍历结果为 RSUWTV。【解析二】本题考查二叉树。结合后序遍历可画出树形结构 ,所以前序遍历时 RSUWTV9.若有一批元素的出栈顺序为“i,n,p,u,t”,其入栈顺序不.可.能.是A.n,i,t,u,p B.n,i,u,t,p C.t,u,p,n,i D.i,n,p,u,t【答案】B【解析一】本题考查栈的基本操作。根据栈的先进后出,后进先出的特点,B选项中 u,t,p三个元素依次入栈,若按照题干元素 p先出栈,那么u和 t都在栈内并且 t在栈顶,接下来出栈的应该是 t,而不是 u,故 B选项错误。【解析一】本题考查栈。B,n进,i进,i出,n出,u进,t进,p进,p出,这时应该 t出而不是 u出。高三技术 试题卷 第 4 页(共 14 页)10.列表 d有 n个整型元素,输出列表中最长连续递增序列的长度。小明编写的 Python程序段如下:k=1;lmax=1;n=len(d)for i in range(1,n):if d[i]>d[i-1]:k+=1else:if k>lmax:lmax=kk=1print(lmax)该程序段在某些情况下无法得到符合题意的结果,下列 4组数据中能测试出这一问题的是A.[1,4,5,1,2] B.[1,2,3,4,1] C.[1,5,1,2,3] D.[5,4,3,2,1]【答案】C【解析一】本题考查顺序查找中最后一次查找的特殊性。程序中逐个遍历相邻元素,判断其递增或非递增,若相邻元素为递增,则长度变量 k值加 1,否则将 k值与长度最大值 lmax进行比较,若 k>lmax,则更新 lmax值为 k,并将 k值回归初始值 1;若最长的递增序列一直持续至最后一个元素,即最后一次循环也是 d[i]>d[i-1],则无法将 k 与 lmax 进行比较,无法将最大值 k赋值给 lmax,就如 C选项中,最终 k=3,lmax=2,但是不会再进行 k与 lmax的比较了,得到的最大长度只能是 2。【解析二】本题考查最长连续序列。判断最长在 else语句中,即 d[i]<=d[i-1]时,但忽略了最后一组一直连续递增。因此 C选项,1,2,3无法判断。11.有如下 Python自定义函数:def fun(x,i):if xreturn ielif x%i==0:return xelse:return fun(x-i,i+1)执行语句 k=fun(37,3)后,k的值为A.5 B.6 C.30 D.34【答案】C【解析一】本题考查递归算法。根据 if语句的条件,计算 fun(37,3)=fun(34,4)=fun(30,5),此时满足 x%i==0的条件,返回 x值为 30。【解析二】本题考查递归。fun(37,3) fun(34,4) fun(30,5) 30高三技术 试题卷 第 5 页(共 14 页)12.有如下 Python程序段,其功能是删除无序链表(元素个数大于等于 2)中的重复元素。def dele(a,head):pre=head;p=a[head][1]while p!=-1:q=headflag=Falsewhile :if a[q][0]==a[p][0]:[1]p=a[p][1]flag=Truebreakq=a[q][1]if not flag:pre=pp=a[p][1]a=[[0,3],[1,2],[1,4],[0,1],[0,5],[2,-1]]dele(a,0)①q!=-1 ②q!=p ③a[pre][1]=a[p][1] ④a[pre][1]=a[q][1]方框中填入的正确代码依次为A.②④ B.②③ C.①④ D.①③【答案】B【解析一】本题考查链表元素删除的程序实现。程序中外层循环用指针 p从第二个节点开始遍历至最后一个节点,内层循环用指针 q 从头节点开始遍历查找相同元素,当出现相同元素时,删除其中一个,而 pre为 p的前驱节点,并未记录 q的前驱节点,故删除的是节点 p,第二个方框填入的是语句③;由于删除的是 p节点,而 p用于外层循环的遍历,那么查找范围到从头节点到 p节点,保证 p节点之前没有相同的元素即可,故第一个方框中填入的是语句②。【解析二】本题考查链表元素删除的程序实现。由 pre=p, p=a[p][1],可知 pre是 p的前驱,删除是删除后继节点,因此第二加框处是删除后继 p节点,选③;从 q=head,p=a[head][1],可知第一加框处 q!=p,否则 if a[q][0]==a[p][0]必然成立,因此第一加框处选②。二、非选择题(本大题共 3小题,其中第 13 小题 7分,第 14小题 10分,第 15 小题 9 分,共 26 分)13.对某二值图像(颜色编号只有 0、1)按如下规则对其进行数据压缩:(1)记录原数据第 1个位置的颜色编号;(2)从左往右依次扫描颜色编号,统计并记录连续出现的相同颜色编号个数;例如:图像的颜色编号:00000000011111111000,压缩结果为“0,9,8,3”(用逗号分隔)9个 8个 3个请回答下列问题:(1)若某二值图像按此规则压缩的结果为“1,1,3,5,6”,则该图像的颜色数据中有 个 1。(2)定义如下 jys(s)函数,参数 s存储压缩结果,为字符串类型,如“0,9,8,3”。函数功能是实现数据解压缩,函数以字符串类型返回原数据。请在划线处填入合适的代码。高三技术 试题卷 第 6 页(共 14 页)def jys(s):d={"1":"0","0":"1"}①ns="";p=s[0];i=2while inum =0while ② :num =num*10 +int(s[i])i +=1i +=1for j in range(num):③p=d[p]return ns【答案】(1)6 (1 分)(2) ①n=len(s) (2 分)②i <= n-1 and "0"<=s[i]<="9" 或 i <= n-1 and s[i]!="," (2 分)③ns += p (2 分)【解析一】本题考查 python基础应用的相关知识。(1)考查考生对题干的理解,根据题干中的例子“0,9,8,3”以及结合代码中字典 d的数据,可得出“1,1,3,5,6”的结果是有 1个 1,3个 0,5个 1,6个 0。故最后 1的个数是 6。(2)观察下方代码在 while的条件表达式中有一个未知量 n,根据已有线索可推断第 1空中的赋值语句形式是求“n=____”,结合已有线索解密过程需要遍历字符串 s的每个元素,故推出“n=len(s)”。代码说明如下:ns="";p=s[0];i=2 #结合 return ns语句可知,ns为解密后输出的字符串。#变量 p表示当前数字,i=2由于第一个位置表示开始的颜色,故从第二个数字开始取。while inum =0 #设初值 num=0,每次取出当前数字后再重置while i<=n-1 and"0"<=s[i]<="9": #若当前数字不是逗号且没有遍历完num =num*10 +int(s[i]) #则取出当前数字i +=1 #继续遍历i+=1 #若遇到逗号退出,则 i的位置要加 1。若遍历完了加 1后,结束整个 while 循环。for j in range(num): #访问 num个数,来决定有几个 0或 1。ns +=p #将个数添加到 ns中p=d[p] #若开始是 0,则下一个数字表示的是 1。#若开始是 1,则下一个数字表示的是 0。#可通过字典 d来实现切换。结合图析整个解密过程更加清楚:高三技术 试题卷 第 7 页(共 14 页)【解析二】本题以 RLE字符压缩算法为背景,主要考察字符串处理。(1)压缩由结果“1,1,3,5,6”可知,原串由字符“1”开头,其中字符“1”连续出现 1次,随后分别为 3个“2”、5个“1”、6个“2”。因此字符“1”共出现 6次。(2)①空初始化原串长度 n = len(s);②空较为常规,考察字符的索引访问以及字符比较,当 s[i]为数字字符时更新 num变量,即“当前有效数据”。这里由于字符串本身可以进行比较,因此答案“0”<=s[i]<=”9”即可,不必要将字符“0”和“9”用 ord函数转换。然而考虑到原串的结尾分隔符缺失,因此 i == len(s)时需要强制退出循环,因此答案为“0”<=s[i]<=”9” and i < n。③空用于记录连续出现的 num个字符,变量p记录了当前连续出现的基本字符,这一点可以从变量 p的初始化和更新确认 p = s[0]、p = d[p]。因此第③空更新返回值 ns的表达式为 ns += p。14.小明搭建了图书查询系统,模拟如第 14题图 a所示自助图书借阅机的查询功能:把书籍放置在读写器上,读写器读取到图书上 RFID电子标签的唯一编号后通过Wi-Fi 传输到Web 服务器数据库中,并在该数据库查询到该书籍的借阅日期。该系统结构示意图如第 14题图 b所示。若图书编号是“A20-2440”,智能终端提交数据到Web服务器的 URL为 http://192.168.3.200/cx bbh=A20-2440,请回答下列问题。第 14题图 a 第 14题图 b(1)关于该图书查询系统,下列说法正确的是 (多选,填字母)。(注:全部选对的得 2 分,选对但不全的得 1 分,不选或有选错的得 0 分)A.该系统网络应用软件的实现架构是 B/S 架构B.数据库是服务器的外接数据存储设备C.智能终端的 IP 地址是 192.168.3.200D.若无线路由器出现故障,智能终端将无法提交数据到服务器(2)该系统实现查询功能的部分服务器端程序如下,请在划线处填入合适的代码@app.route(" ① ",methods=["GET"])def get_h() :DB="data/books.db"bbh = request.args.get("bbh")高三技术 试题卷 第 8 页(共 14 页)conn=sqlite3.connect( ② )#在数据库中查询编号为 bbh 的图书借阅日期存入变量 rslt,代码略return rslt(3)除了给图书贴电子标签,并用读写器采集图书编号外,请写出两种其它采集图书编号的方式 。(注:回答 2种,1种正确得 1分)(4)导出某月的图书借阅流水数据如第 14 题图 c所示,统计借阅次数最多的前 5名(相同借阅次数排名相同),统计结果如第 14题图 d所示,部分 Python程序如下。第 14题图 c 第 14题图 dimport pandas as pdimport matplotlib.pyplot as pltdf = pd.read csv('bookdata.csv') #读取 bookdata.csv中的数据df_gp=df.groupby('BookTitle',as index=False)['BookID']. ○A#分组统计书籍被借阅次数n=len(df_gp)pm=[1]*nfor i in range(n):for j in range(n):if df_gp.at[i,'BookID']#通过行标签和列标签选取值进行比较pm[i]+=1df_gp.insert(2,'排名', pm) #插入“排名”列,值为列表 pmdf _pm=df_gp[ ○B ] #筛选最受欢迎的五本图书df_pm=df_pm.sort_values('排名', ascending=True , ignore_index=True) #升序排列print('本月图书借阅次数最多的前五名:')print(df_pm['BookTitle'])①划线○A 处应填入的代码为 (单选,填字母)。A.sum() B. mean() C.count() D.max()②在划线○B 处填写合适的代码。【答案】(1)AD (2 分,少选 1分,错选 0分)(2) ① /cx (1分)②DB (1分,小写不给分)(3)图书贴条形码,并用扫描枪采集图书编号/用键盘(语音、手写板)输入图书编号/用摄像头识别图书封面、图书编号等 (2分,1种 1分)高三技术 试题卷 第 9 页(共 14 页)(4) ①C (2 分)②df_gp['排名']<=5 或 df_gp.排名<=5 (2 分)【解析一】本题考查信息系统、pandas模块以及分析处理数据的能力。(1)选项 A:根据图 b 可得,用户可以通过浏览器为实现对服务器的访问,系统采用了 B/S 架构,所以 A正确;选项 B:数据库将数据以文件的形式存储在存储服务器中,而非外接的数据存储设备,B错误;选项C:服务器的 IP为:192.168.3.200,C错误。选项 D:根据图 b可得,智能终端通过无线路由实现和服务器双向数据交互,所以 D正确。(2)从题干中数据提交的 URL可得,实现数据提交的功能的路由为“/cx”;sqlite3.connect(path)表示连接到数据库文件,path参数表示数据库文件的路径或者文件名。(3)采集图书编号的方式有多种:可以通过图书编号以条形码的形式编码,然后通过扫描枪扫描;也可以通过手动输入图书编号等方法。(4)第一空根据题干要求分组统计书籍被借阅次数,count()函数可以用于对 Dataframe 中每一列的非空值进行计数操作,以生成计数结果;第二空前面的代码段已经统计出每本书借阅次数,并且根据借阅次数计算排名,借阅次数越多,排名越高。所以最受欢迎的五本图书即为排名的前 5名的记录,可以通过筛选“排名”数据列小于等于 5的记录得到结果。【解析二】本题考查信息系统、pandas模块以及分析处理数据的能力。(1)A 根据描述,传输、查阅数据均是通过浏览器完成,该系统是 B/S架构,正确B 数据库是系统软件,不是存储设备,错误C 这是服务器的 IP地址,不是智能终端的,错误D 从图 b可知,无线路由器故障, 连接中断,无法传输数据,正确(2)①从 URL不难得出正确路由:/cx;② 这里是要连接数据库文件 DB,或者"data/books.db"亦可(3)贴条形码、二维码,用摄像头(扫描枪)采集数据、直接输入(键盘等设备)、摄像头智能识别均可。(4)① 根据要求,这里应该是分组计数,count(),选 C② 根据前面双重循环的代码,遇到借阅次数比 i多的,pm[i]累加,说明 pm存储的是对应的排名,pm[i]如果是初值 1,那就是没有借阅次数比它更多,排名第一。考虑到重名的情况,筛选条件是:df_gp['排名']<=515.某工厂生产的产品包含 n个(编号为 0~n-1)组件,其组装可由多名工人共同协助完成。组装时每个组件都不可遗漏并能按序完成,有些组件存在前置组件(以下简称“前置”),即安装有先后顺序。例如,某产品有 6个组件,如第 15题图 a所示,组件 3的前置是组件 1和组件 2,即安装组件 3需要在组件 1和组件 2完成之后。若 0~5号组件的组装所需单位时间分别为 2,5,2,4,3,5,则在工人数量不限的情况下,所有组件安装完成最短需要 14个单位时间。为了梳理产品组件的组装顺序,并计算所有组件安装完成所需的最短时间,编写程序模拟组装过程:先同时组装前置总数为 0的组件,完成后更新每个组件的前置总数,再重复以上步骤,直至所有组件安装完毕,程序运行结果如第 15题图 b所示,请回答下列问题:高三技术 试题卷 第 10 页(共 14 页)(1)第 15题图 a所示产品的 1号组件组装时长若缩短为 3个单位时间,其它时间保持不变,则所有组件安装完成所需最短时间为_______个单位时间。(2)定义如下 cal(a,n)函数,参数 a列表的每个元素包含两项,a[i][1]是组件编号,a[i][0]是 a[i][1]的前置编号,例如 a中某个元素值为[2,3],表示组件 2是组件 3的前置。该函数的返回值是列表 s和列表pre,其中 s记录所有组件的相互关系,pre[i]记录初始情况下组件 i的前置总数。def cal (a, n):pre=[0]*ns=[[0 for i in range(n)] for j in range(n)] #创建 n*n 的二维数组 s,元素初始值为 0for i in range(len(a)):x, y=a[i][0],a[i][1]s[x][y]=1pre[y]=__________________return pre,s(3)定义如下 proc(n, s, pre)函数,该函数的返回值是列表 v,v[i]代表从开始到组件 i完成组装所需的最短时间。请在划线处填入合适的代码。def proc(n, s, pre):head=tail=0que=[0]*nfor i in range(n):if pre[i]==0:que[tail]=itail+=1while headx=que[head]head+=1for i in range(n):if s[x][i]==1:pre[i]-=1if pre[i]==0:que[tail]=itail+=1v[i]=max(v[i], ① )return v"""组装编号 0~n-1 的单个组件所需时间存入 t列表,组件前置关系存入 a列表,第 15题图 a所需时间 t=[2,5,2,4,3,5];a=[[0,2],[2,3],[1,3],[3,5],[4,5]]"""n=len(t)print('编号为 0~'+str(n-1)+'的组件组装所需单位时间分别为:’,t)v=t[:]pre, s=cal(a, n)高三技术 试题卷 第 11 页(共 14 页)v=proc(n, s, pre)data=[0]*nresult=[i for i in range(n)] #创建列表 result=[0,1,2,……,n-1]for i in range(n):data[i]=v[i]-t[i] #data[i]表示组件 i开始安装时间for i in range(n-1): #按组件开始安装时间升序排序,开始安装时间相同时按组件序号升序for j in range(n-1-i):if data[result[j]]>data[result[j+1]]:②_________________________print('组件组装顺序: ', result,',安装完成所需最短时间: ', max(v))(4)以下选项与题(3)加框处代码功能相同的是_______(多选,填字母)。(注:全部选对的得 2 分,选对但不全的得 1 分,不选或有选错的得 0 分)A.head != tail B.head 0【答案】(1) 13 (1 分)(2) pre[y]+1 (2 分)(3) ① t[i]+v[x] (2 分)② result[j],result[j+1]=result[j+1],result[j] (2 分)(4) AB (2 分,少选 1 分,错选 0 分【解析一】本题考查基于索引的冒泡排序,自定义函数,队列等知识(1)如下图所示,最短时间为 2+2+4+5=13(2)根据题意,pre[i]存储初始情况下组件 i的前置总数,遍历数组 a,对于每个 a[i],a[i][0]是 a[i][1](y)的前置,故该空答案为 pre[y]+1(3)根据题意,以及样例,得到数组 s如左图所示,数组 pre如右图所示:0 1 2 3 4 50 0 0 1 0 0 01 0 0 0 1 0 0 0 1 2 3 4 52 0 0 0 1 0 0 0 0 1 2 0 23 0 0 0 0 0 1 数组 pre4 0 0 0 0 0 15 0 0 0 0 0 0数组 s根据题意,首先处理无前置的组件,故先遍历数组 pre,把值为 0的对应索引按顺序进行入队(que)操作;然后,当队列 que非空时,依次进行出队操作,即对每个组件进行如下处理:如图所示,高三技术 试题卷 第 12 页(共 14 页)若当前处理的组件为 0,以它为前置的是组件 2,则组件 2的最短完成时间 v[2]更新为 v[0]+t[2]=4,同时把2入队若当前处理的组件为 1,以它为前置的是组件 3,则组件 3的最短完成时间 v[3]更新为 v[1]+t[3]=8,若当前处理的组件为 4,以它为前置的组件是 5,则组件 5的最短完成时间 v[5]更新为 v[4]+t[5]=8,如下图所示若当前处理的组件为 2,以它为前置的组件是 3,则组件 3的最短完成时间保持不变,同时因为 3的两个前置 1,2都已经处理完成,故把 3进行入队若当前处理的组件为 3,以它为前置的组件是 5,则组件 5的最短完成时间更新为 v[3]+t[5]=13,同时把 5入队最后处理的组件为 5,它是最后一个,没有前置组件,故处理结束所以,所有组件完成后的最短完成时间是 max(v),即 13第二空是对数组 data进行排序,根据题意,数组 result是索引数组,此处的冒泡排序是基于索引的冒泡排序,故答案为 result[j],result[j+1]=result[j+1],result[j],即比较的是 data数组的相应数据,交换的是索引数组 result的相应数据(4)加框处代码的含义是队列非空,故 A正确。本题中,所有组件都会依次入队和出队,故 B正确,C不正确列表 que的长度保持不变,故 D不正确【解析二】(1)本题考查题目的理解和执行,执行过程如下高三技术 试题卷 第 13 页(共 14 页)(2)本题考查标记数组 pre,pre[i]记录组件 i的前景个数根据题意 a中某个元素值为[2,3],则 x =2,y=3,表示 x是 y的前件 x y,组件 y的前件数加一(3)①本题求 v[i]的最早结束时间假设 x1,x2,…,xm 是组件 i的前件,则组件 i的最早开始时间为max(v[x1],v[x2],…,v[x]),所以组件 i的最早结束时间为max(v[x1],v[x2],…,v[x]) + t[i] max(v[x1] + t[i],v[x2] + t[i],…,v[x] + t[i]) """②本题考查冒泡法排序,交换指针data[i]存储组件 i的开始安装时间,result列表使用时,作为 data列表的索引,所以 reuslt列表是指针,存储第 i个开始安装的组件的索引。当 data[result[j]]>data[result[j+1]]时,节点 result[j+1]的开始安装时间早于节点 result[j]的开始安装时间。节点 result[j+1]应该排在节点 result[j]的前面,所以交换 result[j+1]和 result[j](4)本题考查顺序队列不为空的条件head !=tail head < tail本题处理 n个组件,每个组件只入队一次,故全部组件入队时,tail = n所以 n个组件没有处理完,即队列不为空的条件可以写成 head高三技术 试题卷 第 14 页(共 14 页) 展开更多...... 收起↑ 资源预览