软件工程师面试题及编程题参考答案.docxVIP

  • 3
  • 0
  • 约4.44千字
  • 约 13页
  • 2026-02-01 发布于福建
  • 举报

软件工程师面试题及编程题参考答案.docx

第PAGE页共NUMPAGES页

2026年软件工程师面试题及编程题参考答案

一、选择题(共5题,每题2分,总计10分)

地域/行业针对性:互联网(北京、上海、深圳等地企业常用),考察基础知识与实际应用结合。

1.题干:在Java中,以下哪个方法用于获取当前系统的时间戳(单位为毫秒)?

A.`System.currentTimeMillis()`

B.`System.nanoTime()`

C.`Date.getTime()`

D.`Thread.currentThread().getId()`

答案:A

解析:`System.currentTimeMillis()`返回自1970年1月1日0时0分0秒以来的毫秒数,常用于时间戳计算。`System.nanoTime()`返回更高精度的时间,但非绝对时间戳;`Date.getTime()`依赖`System.currentTimeMillis()`;`Thread.currentThread().getId()`用于线程标识。

2.题干:SQL中,以下哪个关键字用于对查询结果进行排序?

A.`GROUPBY`

B.`ORDERBY`

C.`HAVING`

D.`SELECT`

答案:B

解析:`ORDERBY`用于排序,`GROUPBY`用于分组,`HAVING`用于分组后过滤,`SELECT`用于查询字段。

3.题干:在React中,以下哪个钩子用于在组件挂载后执行副作用?

A.`useState`

B.`useEffect`

C.`useContext`

D.`useRef`

答案:B

解析:`useEffect`控制副作用(如API调用、DOM操作),`useState`管理状态,`useContext`获取上下文值,`useRef`引用DOM或持久变量。

4.题干:Kubernetes中,以下哪个对象用于定义一组Pod的副本和扩展策略?

A.`Deployment`

B.`StatefulSet`

C.`DaemonSet`

D.`Job`

答案:A

解析:`Deployment`自动管理Pod副本,支持滚动更新;`StatefulSet`适用于有持久化存储的Pod;`DaemonSet`每个节点运行一个Pod;`Job`一次性任务。

5.题干:在微服务架构中,以下哪个模式用于服务间的异步通信?

A.RPC

B.REST

C.Event-Driven

D.WebSocket

答案:C

解析:`Event-Driven`通过消息队列(如Kafka)解耦服务;`RPC`同步调用;`REST`同步HTTP通信;`WebSocket`双向实时通信。

二、简答题(共3题,每题5分,总计15分)

地域/行业针对性:大厂(阿里、腾讯、字节跳动等)技术面试常考,考察设计能力与工程实践。

6.题干:简述TCP三次握手过程及其必要性。

答案:

-三次握手:

1.客户端发送SYN=1,随机初始化seq=x到服务器。

2.服务器回复SYN=1,ACK=1,seq=y,ack=x+1。

3.客户端回复ACK=1,ack=y+1。

-必要性:确保双方收发能力正常,防止旧连接请求重入。若仅两次握手,客户端未收到确认可能重发SYN,导致资源浪费。

7.题干:解释HTTP1.1与HTTP/2的主要区别。

答案:

-HTTP/1.1:

-管道化(多个请求可并行发送)。

-Keep-Alive保持连接。

-Host头解决多域问题。

-HTTP/2:

-多路复用(单个连接并行传输)。

-二进制分帧。

-服务端推送。

-更高效头压缩。

8.题干:在分布式系统中,如何解决CAP理论中的冲突?

答案:

-一致性(Consistency):强一致性(如Raft),牺牲可用性(如区块链)。

-可用性(Availability):允许部分节点故障(如最终一致性,本地缓存)。

-分区容错性(PartitionTolerance):使用冗余(如多副本、Paxos/Raft)。

-实践:根据业务场景权衡,如订单系统优先一致性,社交系统优先可用性。

三、编程题(共2题,每题10分,总计20分)

地域/行业针对性:招聘算法工程师或后端开发,考察编码能力与复杂度控制。

9.题干:实现一个LRU(LeastRecentlyUsed)缓存,支持get和put操作。要求:

-get(key):返回key对应的值,若不存在返回-1。

-put(key,value):插入或更新key-value,当缓存满时删除最久未使用项。

文档评论(0)

1亿VIP精品文档

相关文档