版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2026计算机岗面试真题汇编题库含解析考试时间:______分钟总分:______分姓名:______一、选择题1.下列关于算法时间复杂度的说法中,正确的是A.代码段执行次数越多,时间复杂度越高B.时间复杂度与算法的输入规模n无关C.O(n)的时间复杂度优于O(n^2)的时间复杂度D.算法的时间复杂度是固定的,不会随输入数据变化2.在TCP三次握手过程中,客户端发送的第一次握手报文段中,SYN和ACK标志位的状态分别是A.SYN=1,ACK=1B.SYN=1,ACK=0C.SYN=0,ACK=1D.SYN=0,ACK=03.下列关于进程和线程的描述中,错误的是A.线程是CPU调度和分派的基本单位B.进程拥有独立的内存空间,线程共享进程的内存空间C.创建线程的开销比创建进程小D.线程之间不存在任何同步和互斥问题4.在MySQL数据库中,下列关于索引的描述,错误的是A.索引可以大大提高数据的检索速度B.索引会降低数据的插入、删除和更新速度C.主键索引一定是唯一索引D.联合索引的最左前缀原则适用于所有的联合索引5.以下哪些是导致数据库死锁的必要条件(多选)A.互斥条件B.请求与保持条件C.不剥夺条件D.循环等待条件6.关于Redis缓存击穿、缓存穿透和缓存雪崩的区别,以下说法正确的是(多选)A.缓存击穿是指热点Key失效瞬间,大量请求直接打到数据库B.缓存穿透是指查询一个一定不存在的数据,由于缓存neverhit,请求一直压到数据库C.缓存雪崩是指大量Key同时设置相同的过期时间,导致瞬间数据库压力过大D.解决缓存穿透可以使用布隆过滤器7.在设计高并发分布式系统时,CAP定理指的是(多选)A.Consistency(一致性)B.Availability(可用性)C.Performance(性能)D.PartitionTolerance(分区容错性)8.在2026年大模型应用中,RAG(检索增强生成)技术的主要目的是A.提高模型的推理速度B.减少模型的幻觉问题,让回答更准确C.降低模型的训练成本D.替代Transformer架构二、简答题与系统设计题1.请简述TCP协议的“三次握手”过程,并说明为什么需要三次握手而不是两次?2.请列举出数据库事务的四大特性(ACID),并简要解释隔离级别中的“可重复读”是如何实现的?3.请简述Redis分布式锁的实现方案,并说明其缺点是什么?4.请设计一个“秒杀系统”,主要需要解决高并发下的超卖问题和系统稳定性问题,请从数据库设计、缓存策略和后端服务设计三个方面简述你的方案。5.在处理高并发流量时,常用的限流算法有哪些?请分别简述其原理。试卷答案一、选择题1.C解析:时间复杂度反映的是算法执行时间随数据规模增长的变化趋势。O(n)的增长速度远慢于O(n^2),因此在数据量较大时,O(n)优于O(n^2)。选项A中执行次数多不代表复杂度高;B中与输入规模n有关;D中时间复杂度通常取最坏情况,会随输入数据变化。2.B解析:在TCP三次握手过程中,客户端发送连接请求报文,此时还没有收到服务端的确认,所以SYN标志位为1,ACK标志位为0。服务端收到后回复确认,此时SYN和ACK都为1。3.D解析:线程是CPU调度的基本单位,进程是资源分配的基本单位,且创建线程开销比进程小,线程共享进程的内存空间,因此A、B、C均正确。D错误,线程之间由于共享内存,必须使用锁、信号量等机制进行同步和互斥。4.D解析:联合索引遵循最左前缀原则,即查询从索引的最左前列开始,但该原则并不适用于查询索引中的所有列(例如,对于联合索引(a,b,c),如果只查询b或c,索引将无法使用)。A、B、C描述均正确。5.ABCD解析:产生死锁的四个必要条件是:互斥条件、请求与保持条件、不剥夺条件、循环等待条件。这四个条件同时满足时才可能发生死锁。6.ABCD解析:缓存击穿是指热点Key过期瞬间,大量请求直接打到数据库;缓存穿透是指查询一个一定不存在的数据,由于缓存未命中直接打到数据库;缓存雪崩是指大量Key同时设置相同的过期时间,导致瞬间数据库压力过大;布隆过滤器可以有效解决缓存穿透问题。以上选项均正确。7.ABD解析:CAP定理指出分布式系统三个要素:一致性、可用性、分区容错性。性能通常不是分布式系统的核心约束,且这三个要素通常无法同时满足,只能三选二。8.B解析:RAG(检索增强生成)通过将外部知识库中的信息检索出来并输入给大模型,从而增强模型的回答准确性和可靠性,减少模型因训练数据过时而产生的幻觉。二、简答题与系统设计题1.解析:*过程:1.客户端发送一个SYN=1,Seq=x的报文段给服务器,请求建立连接。2.服务器收到SYN报文段后,向客户端发送一个确认报文段,其中SYN=1,ACK=1,确认号ack=x+1,Seq=y。3.客户端收到服务器的确认报文段后,再向服务器发送一个确认报文段,其中ACK=1,Seq=x+1,确认号ack=y+1。*原因:三次握手主要是为了防止已失效的连接请求报文段突然又传送到了服务端,从而产生错误。如果只有两次握手,服务端发送的确认报文段如果因为网络拥堵而延迟,客户端就会以为没有建立连接而再次发送连接请求,导致服务端建立多个连接,浪费资源。2.解析:*ACID特性:1.原子性:事务中的操作要么全做,要么全不做。2.一致性:事务执行前后,数据库从一个一致性状态变换到另一个一致性状态。3.隔离性:一个事务的执行不受其他并发事务的干扰。4.持久性:一个事务一旦提交,对数据的修改就是永久的,即使系统故障也不会丢失。*可重复读(RR)实现:MySQL的InnoDB引擎通过多版本并发控制(MVCC)和Next-KeyLock(临键锁)来实现可重复读。MVCC通过保存数据的旧版本快照,使得事务在读取时看到的是事务开始时的数据版本,从而实现不可重复读和幻读的防护。3.解析:*实现方案:通常使用`SETNX`命令(SETifNoteXists)结合`EXPIRE`命令。即客户端获取锁时,设置一个唯一的Key,如果设置成功则获取锁,并设置过期时间以防止死锁。*缺点:1.单点故障:如果Redis是单机部署,Redis宕机则锁失效。2.误删锁问题:如果业务执行时间超过了锁的过期时间,锁自动释放,其他线程获取锁成功。此时原线程执行完毕,会误删其他线程的锁。3.原子性问题:SETNX和EXPIRE命令通常需要分开执行,如果中间Redis宕机,会导致死锁。4.性能瓶颈:单机Redis处理高并发能力有限。4.解析:*数据库设计:库存字段使用乐观锁(版本号)或悲观锁(行锁)进行扣减,防止超卖。设计流水表记录交易记录。*缓存策略:秒杀开始前,将热点商品库存预热到Redis中。秒杀开始时,直接在Redis中扣减库存。Redis扣减成功后,再异步异步写入数据库或通过消息队列进行最终一致性处理。*后端服务设计:1.限流:使用Nginx限流或应用层限流,防止流量打垮服务器。2.异步削峰:使用消息队列接收用户的秒杀请求,后端服务只负责接收请求并放入队列,快速响应,后台消费者慢慢处理扣减库存和生成订单。3.静态化:将商品详情页静态化,减少数据库查询。5.解析:*固定窗口计数器:在时间窗口内记录请求数,超限则拒绝。缺点是临界点可能产生超限。*
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年混动汽车维修技术培训试题及答案
- 2026年监理工程师《建设工程监理案例分析》真题及答案
- 2026年健康管理师(三级健康指导)考试题及答案
- 2026年老年人健康管理测试题
- 2026年美甲技术(美甲卸除)试题及答案
- 2026年男病人导尿术模拟试题带答案
- 2026年农村集体三资管理实务考试题库及答案
- 2026年拳击裁判能力测试核心题库及答案
- 2026年人工智能训练师(四级)案例分析试题及解析
- 企业管理-电动汽车充电设施建设运营企业申请报告模板
- 售后技术人员技能等级考核方案
- 计算机与人工智能导论 课件 第3章-计算机硬件基础
- 检测仪器与仪表课件
- 借调挂职人员管理办法
- 面部整骨培训课件
- GB/T 45654-2025网络安全技术生成式人工智能服务安全基本要求
- 嗜酸性肉芽肿性多血管炎诊治共识解读课件
- 认知功能障碍患者的护理
- 《德州扒鸡》课件
- 高三期末家长座谈会高三不负梦起航千帆竞模板
- GB/T 44570-2024塑料制品聚碳酸酯板材
评论
0/150
提交评论