2025年IT公司笔试面试题附答案.docxVIP

2025年IT公司笔试面试题附答案.docx

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

2025年IT公司笔试面试题附答案

一、算法与数据结构

1.题目:某物流平台需规划无人机配送路径,地图由m×n的网格表示,每个网格(i,j)有地形成本c[i][j](正整数)。无人机从左上角(0,0)出发,每次只能向右或向下飞行,到达右下角(m-1,n-1)时需总成本最小。若网格中存在若干“禁飞区”(c[i][j]=-1),无法经过,设计算法计算是否存在可行路径,若存在则返回最小成本,否则返回-1。

答案:采用动态规划。定义dp[i][j]为到达(i,j)的最小成本。初始化时,若起点或终点为禁飞区,直接返回-1。第一行和第一列需检查路径是否被禁飞区阻断(若某位置为禁飞区,则其后所有位置不可达)。状态转移方程:dp[i][j]=min(dp[i-1][j],dp[i][j-1])+c[i][j](仅当c[i][j]≠-1且上方/左方可达时有效)。最终若dp[m-1][n-1]为无穷大则返回-1,否则返回该值。时间复杂度O(mn),空间复杂度可优化至O(n)(滚动数组)。

2.题目:实现一个函数,输入为多叉树(每个节点可能有k个子节点)的两个节点p和q,返回它们的最近公共祖先(LCA)。要求非递归实现,且不使用额外空间存储路径。

答案:采用后序遍历思想。定义辅助函数递归查找p或q。对于当前节点,若其本身是p或q,或其子树中包含p/q,则返回该节点;否则返回null。具体步骤:(1)对当前节点的所有子节点递归调用辅助函数,收集结果;(2)若子节点返回结果中存在两个非null值(p和q分别在不同子树),则当前节点为LCA;(3)若仅一个子节点返回非null值,或当前节点是p/q,则向上传递该值。非递归实现可通过栈模拟后序遍历,记录父节点关系,当找到p和q后,从两者向上回溯找第一个共同节点。时间复杂度O(n),空间复杂度O(h)(h为树高)。

二、操作系统与计算机网络

3.题目:某微服务架构中,订单服务(A)需调用库存服务(B)和支付服务(C),三者部署在不同物理机。A与B、A与C间需进行进程通信,需选择通信协议并说明理由。若B需向A推送库存变更通知(非A主动请求),协议选择是否变化?

答案:(1)同步调用场景(A调用B/C):推荐gRPC(基于HTTP/2)。原因:支持二进制协议(更小报文)、多路复用(减少连接开销)、强类型接口定义(Protobuf提升可靠性)、支持流模式(未来扩展)。若需兼容性,也可选用HTTP/1.1+JSON,但性能弱于gRPC。(2)异步通知场景(B推送给A):推荐使用消息队列(如Kafka/RabbitMQ)或WebSocket。消息队列解耦双方,支持异步、削峰填谷;WebSocket支持长连接,适合实时推送。若要求低延迟且B与A网络可靠,也可使用HTTP长轮询,但效率低于前两者。

4.题目:简述HTTPS握手过程(TLS1.3版本),并说明其相比TLS1.2的主要优化点。

答案:TLS1.3握手流程(以客户端首次连接为例):(1)客户端发送ClientHello(支持的TLS版本、密码套件列表、随机数ClientRandom、扩展信息如支持的签名算法);(2)服务端响应ServerHello(选定的密码套件、ServerRandom、证书链、ServerKeyExchange(若使用ECDHE));(3)客户端验证证书,提供预主密钥(若使用ECC,通过服务端公钥加密),计算主密钥(基于ClientRandom、ServerRandom、预主密钥);(4)客户端发送Finished消息(使用主密钥加密的握手信息哈希);(5)服务端验证Finished消息,发送自己的Finished消息;(6)握手完成,后续通信使用主密钥派生的会话密钥加密。

TLS1.3优化点:(1)减少往返次数:废弃RSA密钥交换,默认使用ECHDE(椭圆曲线密钥交换),支持0-RTT(需会话恢复);(2)简化密码套件:仅保留AES-GCM、ChaCha20-Poly1305等现代加密算法,移除DES、3DES等弱算法;(3)增强安全性:禁止重协商,密钥交换过程更隐蔽(前向安全默认开启);(4)握手消息加密:ServerHello之后的消息均加密,防止中间者攻击。

三、数据库与SQL

5.题目:某电商用户行为表user_behavior(user_idINT,behavior_typeVARCHAR(10),occur_timeDATETIME)记录用户浏览、加购、下单等行为。需统计:(1)每个用户连续3天及以上登录(behavior_type=login)的起始日期;(2)过去30天内,每个用户的“浏览→加购→下单”转

文档评论(0)

每一天都很美好 + 关注
实名认证
文档贡献者

加油,继续努力

1亿VIP精品文档

相关文档