计算机岗2026面试习题汇编含答案及解析_第1页
计算机岗2026面试习题汇编含答案及解析_第2页
计算机岗2026面试习题汇编含答案及解析_第3页
计算机岗2026面试习题汇编含答案及解析_第4页
计算机岗2026面试习题汇编含答案及解析_第5页
已阅读5页,还剩7页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机岗2026面试习题汇编含答案及解析考试时间:______分钟总分:______分姓名:______1.下列关于TCP三次握手过程的描述,正确的是()。A.第一次握手时,客户端发送SYN包,确认号为0,序号为随机数XB.第二次握手时,服务端发送SYN+ACK包,确认号为X+1,序号为随机数YC.第三次握手时,客户端发送ACK包,确认号为Y+1,序号为X+1D.第三次握手时,服务端发送ACK包,确认号为X+1,序号为X+12.在Java中,HashMap在并发环境下可能导致死循环,主要原因是在扩容时()。A.线程安全未处理B.负载因子设置不当C.链表元素在扩容时发生了反转D.数组长度不够3.下列关于MySQL索引的描述,正确的是()。A.聚簇索引的叶子节点存储的是主键值B.非聚簇索引的叶子节点存储的是行数据C.联合索引中,查询条件必须包含索引的第一列才能命中索引D.使用LIKE查询以通配符开头时,一定会导致索引失效4.Redis中,如果某个Key设置了过期时间,但在过期后没有被自动删除,可能的原因是()。A.Redis服务器内存不足B.Key被修改过C.依赖过期机制的淘汰策略被关闭D.Key的类型为String5.下列关于Java内存模型(JMM)的描述,正确的是()。A.volatile关键字可以保证变量的原子性B.long和double类型的读写在多线程环境下是原子操作C.happens-before原则用于解决指令重排序问题D.synchronized锁升级为偏向锁后,不需要CAS操作6.操作系统中,进程与线程的主要区别不包括()。A.进程是资源分配的基本单位,线程是调度的基本单位B.一个进程崩溃后,其所有线程都会崩溃C.同一进程下的不同线程共享进程的地址空间D.线程上下文切换比进程上下文切换更快7.在分布式系统中,为了解决分布式事务问题,CAP理论指的是()。A.Consistency(一致性)、Availability(可用性)、PartitionTolerance(分区容错性)B.Consistency(一致性)、Availability(可用性)、Performance(性能)C.Consistency(一致性)、Capacity(容量)、PartitionTolerance(分区容错性)D.Consistency(一致性)、Capacity(容量)、Performance(性能)8.下列哪些是HTTP/1.1相比HTTP/1.0的主要改进()。A.支持持久连接B.支持缓存控制C.支持断点续传D.支持多路复用9.以下哪些是Linux常用的高效命令()。A.grepB.awkC.sedD.find10.在数据结构中,快速排序的时间复杂度在平均情况下为()。A.O(n)B.O(n^2)C.O(nlogn)D.O(logn)11.以下关于设计模式的描述,正确的是()。A.单例模式保证了类只有一个实例,并提供了访问它的全局访问点B.工厂模式通常用于创建不同类型的对象,但不需要指定具体的类C.观察者模式通常用于解耦被观察者和观察者D.策略模式允许在运行时选择算法的行为12.在Redis中,如果需要实现分布式锁,通常采用()。A.SETkeyvalueNXPXmillisecondsB.SETkeyvalueEXsecondsC.SETkeyvalueD.SETNXkeyvalue13.下列哪些是Java中常见的垃圾回收算法()。A.标记-清除算法B.复制算法C.标记-整理算法D.分代收集算法14.下列哪些是HTTP方法()。A.GETB.POSTC.PUTD.DELETE15.在微服务架构中,服务注册与发现的作用是()。A.自动注册服务实例B.记录服务实例的IP和端口信息C.实现服务间的负载均衡D.处理跨域问题16.下列哪些是数据库事务的隔离级别()。A.读未提交B.读已提交C.可重复读D.串行化17.在JavaScript中,下列哪些是基本数据类型()。A.NumberB.StringC.ObjectD.Boolean18.下列哪些是Git常用命令()。A.gitaddB.gitcommitC.gitpushD.gitpull19.下列哪些是TCP协议的特性()。A.面向连接B.面向无连接C.可靠传输D.无差错传输20.在Linux中,查看当前进程信息的命令是()。A.psB.topC.killD.cat21.简述:什么是缓存穿透?如何解决?22.简述:MySQL中InnoDB引擎的行级锁是如何实现的?23.简述:什么是红黑树?它在HashMap中有什么作用?24.简述:TCP三次握手的作用是什么?25.简述:什么是幂等性?在接口设计中如何保证幂等性?1.A,B,C解析:-A正确:客户端发送SYN,序号为x,确认号为0。-B正确:服务端回复SYN+ACK,序号为y,确认号为x+1。-C正确:客户端收到后发送ACK,序号为x+1,确认号为y+1。-D错误:第三次握手是由客户端发送ACK包,服务端在第二次握手时已经发送过ACK,第三次握手不需要服务端再发。2.A,C解析:-A正确:HashMap非线程安全,未加锁导致并发修改异常。-C正确:并发扩容时,链表节点在迁移过程中发生反转,导致形成环形链表,进而在get时死循环。-B、D不是主要原因。3.C,D解析:-A错误:聚簇索引的叶子节点存储的是数据行本身,而非主键值。-B错误:非聚簇索引(二级索引)的叶子节点存储的是主键值,用于回表查询。-C正确:联合索引遵循最左前缀原则,查询条件必须包含索引的第一列才能有效利用索引。-D正确:`LIKE'%abc'`这种以通配符开头的查询会导致索引失效,全表扫描。4.C解析:-C正确:如果Redis的内存淘汰策略中,没有设置`volatile-ttl`或`allkeys-lru`等涉及过期时间的策略,即使Key设置了过期时间,Redis也不会主动去清理它。5.B,C,D解析:-A错误:`volatile`关键字只能保证可见性和有序性,不能保证原子性(例如自增操作`i++`就不是原子的)。-B正确:在Java中,`long`和`double`类型的读写通常被定义为原子操作。-C正确:`happens-before`原则定义了内存可见性的顺序,用于解决指令重排序问题。-D正确:锁升级过程中,从偏向锁升级到轻量级锁需要通过CAS操作。6.B解析:-A、C、D均为进程与线程的区别。-B错误:进程是资源分配的基本单位,而线程是调度的基本单位。在Linux等操作系统中,一个线程发生严重错误(如段错误)通常会直接导致整个进程崩溃。7.A解析:-A正确:CAP理论指在分布式系统中,一致性、可用性、分区容错性三者不可兼得,通常只能保留CAP中的两个。8.A,B,C解析:-A正确:HTTP/1.1支持持久连接(Keep-Alive)。-B正确:支持缓存控制(Cache-Control)。-C正确:支持断点续传(Range请求头)。-D错误:HTTP/1.1不支持多路复用,这是HTTP/2的特性。9.A,B,C,D解析:-四个选项均为Linux中非常常用且高效的命令。10.C解析:-快速排序的平均时间复杂度为O(nlogn),最坏情况(如数组已有序)为O(n^2)。11.A,B,C,D解析:-四个选项均为经典设计模式,分别对应单例、工厂、观察者、策略模式。12.A,B解析:-A正确:`SETkeyvalueNXPXmilliseconds`是设置分布式锁的标准写法(不存在则设置,并设置毫秒级过期)。-B正确:`SETkeyvalueEXseconds`也可以设置过期时间(秒级)。-C错误:没有过期时间会导致死锁。-D错误:`SETNX`(SetifNotExists)只能设置键值,且不能原子性地设置过期时间。13.A,B,C,D解析:-四个选项均为Java垃圾回收中涉及到的算法或机制。14.A,B,C,D解析:-四个选项均为HTTP标准方法。15.A,B,C解析:-A、B、C均为服务注册与发现的作用。-D错误:处理跨域问题通常是前端配置或网关层(Nginx)的处理,不属于注册与发现的核心范畴。16.A,B,C,D解析:-四个选项均为SQL标准中定义的隔离级别。17.A,B,D解析:-JavaScript中基本数据类型包括Number,String,Boolean,Undefined,Null,Symbol,BigInt。-Object属于引用数据类型。18.A,B,C,D解析:-四个选项均为Git常用的核心命令。19.A,C,D解析:-A正确:TCP是面向连接的协议(三次握手建立连接)。-B错误:UDP是面向无连接的协议。-C、D正确:TCP通过校验和、序列号、确认应答等机制保证可靠传输。20.A,B解析:-A正确:`ps`查看静态快照。-B正确:`top`查看动态实时进程状态。-C错误:`kill`用于终止进程。-D错误:`cat`用于查看文件内容。21.试卷答案解析:定义:缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,导致这个不存在的数据每次请求都要到存储层去查,无法绕过缓存。解决思路:1.布隆过滤器:在查询数据库前,先通过布隆过滤器判断该key是否存在。如果布隆过滤器认为存在,但数据库查不到,说明是误判(极小概率),直接返回空。2.缓存空对象:当存储层查不到数据时,仍然将空值写入缓存,但设置一个较短的过期时间(如1分钟)。这样防止缓存穿透,但会占用一定的内存空间。22.试卷答案解析:InnoDB的行级锁是通过在记录上添加索引来实现的。如果没有索引,InnoDB会使用表级锁。具体实现方式分为三类:1.记录锁:锁定索引记录本身。2.间隙锁:锁定索引记录之间的间隙(防止幻读)。3.临键锁:RecordLock+GapLock,是InnoDB默认的锁,既锁定记录,也锁定间隙。23.试卷答案解析:定义:红黑树是一种自平衡二叉搜索树,它通过在节点上维护红黑属性(如根节点为黑、红色节点子节点为黑、任意路径上黑节点数相等)来保证树的平衡,时间复杂度为O(logn)。作用:在Java的HashMap中,红黑树用于替代链表存储数据。当链表长度超过阈值(默认8)时,链表会转换为红黑树。这解决了链表查询时间复杂度为O(n)的问题,将查找效率提升至O(logn),显著提高了大数据量下的查询性能。24.试卷答案解析:1.建立可靠连接:确保发送方和接收方的时钟同步,并能确认对方的发送和接收能力。2.同步序列号:交换初始序列号(ISN),为后续的数据传输建立有序的基础。3.分配资源:双方在三次握手完成后,会为该连接分配TCP缓冲区和变量,为后续的数据传输做准备。25.试卷答案解析:定义:幂

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论