版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2025年编程测试试题及答案一、单项选择题(每题3分,共30分)1.关于Python提供器(Generator)的描述,错误的是()A.提供器使用yield语句返回值B.提供器在迭代时会保留当前状态C.提供器表达式(genexpr)的内存效率低于列表推导式D.提供器可以通过next()函数逐个获取值2.以下Java代码的输出结果是()```javapublicclassTest{publicstaticvoidmain(String[]args){try{System.out.print("A");thrownewRuntimeException();}catch(Exceptione){System.out.print("B");}finally{System.out.print("C");}System.out.print("D");}}```A.ABCDB.ABCDC.ABCDD.ACBD3.以下C++代码中,存在内存泄漏的是()A.`std::shared_ptr<int>p1(newint(5));`B.`intp2=newint[10];deletep2;`C.`std::unique_ptr<int[]>p3(newint[10]);`D.`autop4=std::make_unique<int>(3);`4.对长度为n的有序数组进行二分查找,最坏情况下的时间复杂度是()A.O(n)B.O(nlogn)C.O(logn)D.O(n²)5.哈希表中解决哈希冲突的方法不包括()A.链地址法B.开放寻址法C.再哈希法D.快速排序法6.操作系统中,进程的“就绪状态”是指()A.进程正在CPU上运行B.进程已获得除CPU外的所有资源,等待分配CPUC.进程因等待某事件而暂时无法运行D.进程已结束运行,等待系统回收资源7.以下SQL查询中,能正确统计每个部门(dept_id)的平均工资(salary)且排除人数少于3人的部门的是()A.`SELECTdept_id,AVG(salary)FROMemployeesGROUPBYdept_idHAVINGCOUNT()>=3;`B.`SELECTdept_id,AVG(salary)FROMemployeesGROUPBYdept_idWHERECOUNT()>=3;`C.`SELECTdept_id,AVG(salary)FROMemployeesWHERECOUNT()>=3GROUPBYdept_id;`D.`SELECTdept_id,AVG(salary)FROMemployeesGROUPBYdept_idHAVINGCOUNT(dept_id)>3;`8.已知某二叉树的前序遍历序列为ABCDE,中序遍历序列为BADCE,则该二叉树的后序遍历序列为()A.BDECAB.BEDACC.BDAECD.BEDCA9.动态规划算法的核心思想是()A.分而治之,将问题分解为独立子问题B.贪心选择,每一步选择当前最优解C.记录子问题的解,避免重复计算D.深度优先搜索,遍历所有可能路径10.以下关于TCP和UDP的描述,错误的是()A.TCP是面向连接的,UDP是无连接的B.TCP提供可靠传输,UDP不保证可靠性C.TCP适用于视频流传输,UDP适用于文件传输D.TCP有流量控制机制,UDP没有二、填空题(每题4分,共20分)1.补全Python代码,实现斐波那契数列的提供器,输出前10项:```pythondeffib_generator():a,b=0,1whileTrue:yieldaa,b=b,______fib=fib_generator()print([next(fib)for_inrange(10)])```2.补全Java代码,实现线程安全的单例模式(双重检查锁定):```javapublicclassSingleton{privatestatic______Singletoninstance;privateSingleton(){}publicstaticSingletongetInstance(){if(instance==null){synchronized(Singleton.class){if(______){instance=newSingleton();}}}returninstance;}}```3.补全C++代码,使用`unique_ptr`管理动态分配的整型数组,并输出数组元素:```cppinclude<memory>include<iostream>intmain(){std::unique_ptr<int[]>arr(newint[5]{1,3,5,7,9});for(inti=0;i<5;++i){std::cout<<______<<"";}return0;}```4.补全快速排序的分区(partition)函数,选择最后一个元素作为基准(pivot):```pythondefpartition(arr,low,high):pivot=arr[high]i=low1forjinrange(low,high):ifarr[j]<=pivot:i+=1arr[i],arr[j]=arr[j],arr[i]arr[i+1],arr[high]=arr[high],arr[i+1]return______```5.补全SQL语句,查询“学生表”中年龄(age)在18到22岁之间,且性别(gender)为“女”的学生姓名(name),按年龄降序排列:```sqlSELECTnameFROMstudentsWHEREageBETWEEN18AND22ANDgender='女'ORDERBY______;```三、编程题(共50分)1.(10分)给定一个字符串`s`,判断其是否为有效的括号序列。有效括号序列需满足:所有类型的括号(`()`、`[]`、`{}`)必须正确闭合;左括号必须用相同类型的右括号闭合;左括号必须按正确顺序闭合。示例:`s="([{}])"`→有效;`s="([)]"`→无效。2.(12分)实现一个函数`addLargeNumbers`,计算两个大整数(超过64位)的加法。输入为字符串形式的非负整数,输出为字符串形式的结果。示例:`addLargeNumbers("12345678901234567890","98765432109876543210")`→`"111111111011111111100"`。3.(14分)给定一个整数数组`nums`和一个目标值`target`,找到其中最长的连续子数组,使得子数组的和等于`target`,返回其长度。若不存在这样的子数组,返回0。示例:`nums=[1,-1,5,-2,3],target=3`→最长子数组为`[1,-1,5,-2]`,长度为4。4.(14分)设计一个LRU(最近最少使用)缓存,要求支持`get`和`put`操作,时间复杂度均为O(1)。缓存容量固定为`capacity`。示例:初始化`LRUCachecache=newLRUCache(2);``cache.put(1,1);cache.put(2,2);`→缓存:`{1:1,2:2}``cache.get(1);`→返回1,缓存变为`{2:2,1:1}`(1最近使用)`cache.put(3,3);`→淘汰最久未使用的2,缓存:`{1:1,3:3}``cache.get(2);`→返回-1(不存在)参考答案一、单项选择题1.C(提供器表达式内存效率更高,因为它逐次提供值,不一次性存储所有元素)2.A(执行顺序:try块输出A→抛出异常→catch块输出B→finally块输出C→最后输出D,结果ABCD)3.B(`newint[10]`需用`delete[]`释放,否则内存泄漏)4.C(二分查找最坏情况为O(logn))5.D(快速排序是排序算法,非哈希冲突解决方法)6.B(就绪状态指进程已获得除CPU外的所有资源,等待调度)7.A(GROUPBY后过滤用HAVING,COUNT()统计每组行数)8.D(前序根为A,中序分割左子树B,右子树DCE→递归构建后序为BEDCA)9.C(动态规划通过记录子问题解避免重复计算)10.C(TCP可靠但开销大,适用于文件传输;UDP无连接,适用于视频流)二、填空题1.`a+b`(斐波那契数列的下一项为前两项之和)2.`volatile`;`instance==null`(双重检查锁定需volatile防止指令重排)3.`arr[i]`(`unique_ptr<int[]>`通过下标访问元素)4.`i+1`(分区函数返回基准的最终位置)5.`ageDESC`(按年龄降序排列)三、编程题1.有效括号序列判断思路:使用栈结构,遍历字符串,遇到左括号入栈,遇到右括号检查栈顶是否为匹配的左括号(若栈空或不匹配则无效)。遍历结束后栈需为空。```pythondefis_valid_parentheses(s:str)->bool:stack=[]pairs={')':'(',']':'[','}':'{'}forcharins:ifcharinpairs.values():左括号stack.append(char)else:右括号ifnotstackorstack[-1]!=pairs[char]:returnFalsestack.pop()returnnotstack栈空则有效```2.大整数加法思路:从右到左逐位相加,处理进位。注意补零对齐长度,最后处理最高位的进位。```pythondefaddLargeNumbers(num1:str,num2:str)->str:res=[]i,j,carry=len(num1)-1,len(num2)-1,0whilei>=0orj>=0orcarry>0:n1=int(num1[i])ifi>=0else0n2=int(num2[j])ifj>=0else0total=n1+n2+carrycarry=total//10res.append(str(total%10))i,j=i-1,j-1return''.join(reversed(res))```3.最长连续子数组和为目标值思路:使用哈希表记录前缀和第一次出现的索引。遍历数组计算前缀和`prefix`,若`prefixtarget`存在于哈希表中,则当前子数组长度为`当前索引哈希表中记录的索引`。```pythondeflongestSubarraySum(nums:list[int],target:int)->int:prefix_map={0:-1}初始前缀和0对应索引-1max_len=0current_sum=0foridx,numinenumerate(nums):current_sum+=numif(current_sumtarget)inprefix_map:max_len=max(max_len,idxprefix_map[current_sumtarget])ifcurrent_sumnotinprefix_map:仅记录第一次出现的索引prefix_map[current_sum]=idxreturnmax_len```4.LRU缓存实现思路:使用双向链表维护访问顺序(最近使用的在头部),哈希表记录键到链表节点的映射。`get`操作将节点移到头部,`put`操作若容量满则删除尾部节点。```pythonclassListNode:def__init__(self,key=0,value=0):self.key=keyself.value=valueself.prev=Noneself.next=NoneclassLRUCache:def__init__(self,capacity:int):self.capacity=capacityself.cache={}self.head=ListNode()虚拟头节点self.tail=ListNode()虚拟尾节点self.head.next=self.tailself.tail.prev=self.headdef_move_to_head(self,node:ListNode):断开原位置node.prev.next=node.nextnode.next.prev=node.prev插入头部node.prev=self.headnode.next=self.head.nextself.head.next.prev=nodeself.head.next=nodedef_add_to_head(self,node:ListNode):node.prev=self.headnode.next=self.head.nextself.head.next.prev=nodeself.head.next=nodedef_remove_tail(self)->Li
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年山东省经济管理干部学院马克思主义基本原理概论期末考试笔试真题汇编
- 2024年广西政法管理干部学院马克思主义基本原理概论期末考试笔试题库
- 《基于体验式学习的思政课实践教学基地课程创新研究》教学研究课题报告
- 初中AI课程中神经网络基础的翻转课堂教学模式创新研究课题报告教学研究课题报告
- 2025年智能安防巡逻系统集成在智慧社区的社区安全创新应用报告
- 高中语文任务群教学中的教学效果反馈与改进研究教学研究课题报告
- 2025年赣州远恒佳职业学院马克思主义基本原理概论期末考试模拟试卷
- 2025年常德职业技术学院马克思主义基本原理概论期末考试笔试真题汇编
- 2024年中国地质大学(武汉)马克思主义基本原理概论期末考试笔试题库
- 2024年黔东南理工职业学院马克思主义基本原理概论期末考试真题汇编
- 具有较大危险因素的生产经营场所、设备和设施的安全管理制度
- 知道网课智慧树《失智失能老人整合照护(浙江中医药大学)》章节测试答案
- JT-T-883-2014营运车辆行驶危险预警系统技术要求和试验方法
- 适用于新高考新教材天津专版2024届高考英语一轮总复习写作专项提升Step3变魔句-提升描写逼真情境能力课件外研版
- 元宇宙技术与应用智慧树知到期末考试答案章节答案2024年中国科学技术大学
- 竹雕的雕刻工艺
- 社交媒体网络虚假信息传播的影响和治理
- 自考《影视编导》03513复习备考试题库(含答案)
- 消防设计专篇
- 新人教版高中生物必修一全册课时练(同步练习)
- 「梦回唐宋」-边塞诗(可编辑版)
评论
0/150
提交评论