华OD面经-C++-软件开发-24届考研

背景:

24届毕业生,末流211本。二战后开始投od,先后刷了力扣200题

机试:

第一道,考二叉树,求二叉树所有节点的路径之和。dfs遍历一遍就可以得出结果了,算法本身不算难。但要注意都需要自己写输入输出,如果建树的话比较麻烦,直接用的数组存储。

第二道,贪心。原题记不清了,类似于leetcode买卖股票的最佳时机。做完提交后,发现部分用例没过,因为150及格线,所以没太在意就直接下一题了。第三道,字符串处理,考的滑动窗口,对应题库中寻找符合要求的最长子串。大致题意是滑窗内任意字符不能出现超过两次,同时不能出现屏蔽字符。也是刚提交只过了部分用例,大概50%。后面又修改了一下。最后机考分数 350+,比较幸运的是上面题都是题库原题。

性格测试:

只要不选偏激的,并且前后保持一致就可以顺利通过,详细细节可以问问 hr

hr 面:

主要聊聊天,评判一下稳定性,问了gap的原因,这部分不用太担心,考研的话也可以照实说。

技术一面:

手撕:leetcode 2.两数相加原题。大意是链表实现两个整数相加,不算难。需要熟悉一下链表操作。

然后问了一些 c++八股,觉得八股更难:真的难。问了继承方式有哪些,各有什么区别。什么是虚函数,什么是虚函数表?什么是共享指针,有什么特点?存储区有哪几种?new和malloc有什么区别?什么是进程,什么是线程,知道协程吗?物理内存和虚拟内存有什么区别?说说用户态和内核态。什么是内存泄露?怎么查看有无泄漏情况?怎么优化代码?(这个问题不知道怎么答,就说了一些优化算法,然后选合适的数据结构。)

技术二面:

手撕:leetcode 17.电话号码的字母组合考查回溯算法。这个也是之前刷到过。回溯掌握套路就不是很难,需要多刷一些相关题型。手撕同时比较久。然后也是问了c++八股,没问项目,但大家还是要熟悉一下项目。问了结构体和类的区别。结构体里能不能写构造函数?构造函数有哪些?指针和引用的区别。什么是函数重载?父类和子类构造函数调用顺序?析构函数调用顺序?虚函数和纯虚函数区别?stl库容器有哪些?vector和list有什么区别?map和unordered map有什么区别?智能指针有哪几种?什么是内联函数?进程和线程的区别。说说设计模式有哪几种?

主管面:

主管面也问了一些八股,我看大多数人的面经,主管面都是聊天,没想到还问了八股。然后问了项目和毕设(因为我写了毕设,所以问了一下,但是也是垃圾项目)。最后说了薪资和待遇。最终也是好不容易拿下了 offer。

#OD面经#
华OD面经 文章被收录于专栏

首先介绍下正常情况下的流程,机试➕综测测试➕确定具体部门后资格面➕技术一面➕技术二面➕主管面➕谈薪资和等审批 该专栏是已经入职的同学分享的经验贴,希望可以对大家有帮助

全部评论
你好,我想问问od入职了之后,会让你干些什么啊?
点赞 回复 分享
发布于 05-08 20:41 辽宁

相关推荐

05-06 15:29
东华大学 C++
1. ​分布式订单ID生成? 短时间高并发下如何保证唯一性?我先回答了雪花-like, 上段实习中, 我们项目的全局GUID生成器是我写的, 考虑了短时间内大量产生的情况, 向后借用, 未考虑时钟回拨然后想起来当时和leader讨论,  单独的GUID生成中心, 分批向各个ds批发号段.. 或者是用tacplus的自增id, 但是这样效率太低2. ​CPU 性能瓶颈分析使用 prof 工具监视热点函数的性能消耗3. 上段实习工作内容? 难点?    背包/仓库/道具 ​重构模块追问​:    在两周内重构1万行代码,如何保证代码质量?是否引入单元测试或自动化验证?    10天完成15天任务,如何协调开发与测试资源?是否牺牲技术债?4. 问了一点网络: 网络通信与实时系统视频会议与代码共享的链路设计追问​:解释从你的设备到面试官屏幕的完整网络路径(如NAT穿透、协议选择)5. 游戏服务器同步机制? 和互联网开发的区别服务器作为权威状态源,定期向客户端广播游戏世界的完整或增量状态(如玩家位置、血量)电商无状态服务可通过REST API+RPC横向扩展,而游戏服务器需维护长连接和会话状态。6. 系统设计 分布式事务与最终一致性​游戏道具交易涉及多个系统(背包、仓库、邮件),如何设计分布式事务?对比电商订单支付+库存扣减。​回答方向​:​Saga模式​:将事务拆分为多个可补偿步骤(如“扣道具-发邮件-记录日志”,失败则回滚)。对比:电商更倾向异步消息队列​(如Kafka)实现最终一致性。7. 游戏服务器宕机后如何快速恢复玩家状态?电商系统如何设计类似容灾机制?定时落DB+游戏整体运行在共享内存, 方便resume7. 游戏后端请求链路分析采用自定义的可靠UDP协议​(KCP),平衡延迟与可靠性. 玩家操作(如移动、技能释放)需携带时间戳和操作序列号,用于服务端验证顺序, 请求直达, 客户端直接和服务器感觉面试内容很不"八股", 答得稀里糊涂的, 上面的顺序不是面试提问顺序, 想起来什么说什么, 大家做个参考
查看11道真题和解析
点赞 评论 收藏
分享
评论
6
15
分享

创作者周榜

更多
牛客网
牛客企业服务