华为OD-24届考研空档-Python面经

背景信息

本科毕业合肥工业大学能源化学工程专业,24届毕业生,两次跨考计算机22408,均失败,今年国科大复试被刷之后,就开始专心准备od机试和面试。

机考前刷题准备

我是4月初开始刷算法题,5月11号上机考试。如果之前没怎么刷过算法题,我十分建议先刷leetcode热门100题,因为这里面题目都是按类型分类,比如栈、图、二叉树、回溯、dp等,可以系统性的弥补知识短板,并且里面有很多大佬分享题解。

对于刷题的策略,我个人的建议是:

1、刷题一定要先自己分析题目不要直接看答案,尝试自己把题目做出来,哪怕你的复杂度很高,性能很差,代码很冗杂,这个过程是锻炼你把自己的思考变成代码的能力。

2、对一个题目除了要关注他的暴力解法,还要关注它的最优解法,不要用一个很暴力的方法解决了以后,就不管这题了,仍然要去看看题解,看看大佬是怎么做的,学习他们的方法。不要怕在这上面浪费时间,你学的后面都会让你受益的。他们会有很多巧思,这些巧思可能以后会发现很多题都能用。

按我如上刷完leetcode题库h100后,你的代码能力已经得到很大的提升了,但是仍然要去刷od题库,毕竟考试题都是题库里抽。但你刷完题库也不现实,考试题库都会有对应的,你跟HR问清楚后刷对应的题库就行。另外要说的是,题库的题目如果你去CSDN上是要花钱买题库的,一般作者也会给你准备在线刷题环境。不买题库你只能看到题目,而不会有答案。如果你不想费事,可以考虑去买题库,但我不会给你具体买谁的专栏,我不是卖题的。

但我是没有花一分钱买任何题库,我可以给你一条性价比并且非常能锻炼你代码能力的路。你可以先打开CSDN题库,因为你只能看到题目,可以把题目复制下来浏览器搜索,大部分题其实是有人分享自己的答案的,但答案都是他们自己写的,性能可能并不会很好,而且用的编程语言不一定是你考试的,但至少可以给你提供一个解题思路。你搜完题目后不要看答案,只看题目,先独立解决题目,然后在你的本地IDE编写代码解题,先通过用例,然后在尝试其他用例判断代码稳定性如何。当然你也可以把你写的代码让deepseek或者GPT看看有没有什么问题(AI有时也会有错误,不要全信,只作为参考)

od的题目应用型很强,比起怎么做出od题库的算法题,你最先要搞定的是能不能读懂题目和正确理解题目的意思。

现在od机考要求很严,建议机考前把电脑可能弹窗的应用通知权限全关掉,手机进应用权限管理把APP通知权限权关掉,电话短信暂时设置为不接受任何来电和对短信。如果题不难,你在网站不用调试就能把题做出来,就直接在网站做,不用切到IDE了,我全程没有切屏,如果要切屏到IDE,用快捷键去切不漏桌面。

机考(5月12日)

a.分披萨(15/100)

这题不怎么会,不知道怎么解,但是还是用我的思路去试了试,通过了15%的用例(所以有时候100分的题目反而比200分的难)。

b.第二题(100/100)

是扩散,初始给一个m*n的全0矩阵,然后给两个坐标点设置为1,(第二个坐标点可能不是有效坐标),1每单位时间内向四周扩散1个单位把0变成1,问最短多久可以把所有0变成1,和疫情扩散一样的解法,很简单。

c.第三题(200/200)

是根据词库分割字符串,给定第一个需要分割的字符串,字符串中有标点符号,仅用于分割句子,无意义。给第二个字符串词库,以','分割,每个单位都是词库中的单词。分割时优先选择词库中最长的单词,比如iloveyou,词库中有i,love,ilove,you,则需要分割成ilove,you而不是分割成i,love,you,这个用滑动窗口做比较简单。

最终315/400,还算可以。

性格测试(5月13日)

HR会给你辅导性格测试的题目怎么答,知乎上也有性格测试的攻略。要认真准备一下,虽然简单,但是这个挂了要等一年半才能再来。

HR面(5月14日)

自我介绍,学了哪些知识,意向哪里工作,期望薪资,考研经历,为什么没上岸,为什么选择od,有没有工作经历,是否还在找其他工作。如实回答就好,如果问你还考不考研,回答不会再考就行了。

技术一面(5月20日)

1、上来先问工作经验和项目情况:我说前段时间准备考研,还没有工作经验,项目有两个,一个是本科化工竞赛的,一个是准备考研复试做的深度学习项目。

2、介绍一下深度学习项目:是一个基于resnet的图像分类项目,介绍了项目目的,项目原理,项目用了哪些优化方法,达到了什么结果,性能怎么样。

3、手撕代码:跳跃游戏 之后就是八股问答环节了分为两方面、一方面是408,另一方面是Python基础知识。

408:

1、数据结构算法篇:

①介绍堆排序

②排序算法的稳定性与不稳定性

③链表和数组哪个访问效率更高

④介绍完全二叉树

2、操作系统篇

①介绍多线程

②多线程竞争怎么保证一致性和正确性

③死锁

④内核态与用户态

⑤进程有哪些状态

3、计算机网络篇

①ARP

②TCP与UDP区别

③上面两个哪个效率更高

④子网掩码

⑤A、B、C、D、E类ipv4地址的范围

 Python:

1、类方法和实例方法区别

2、类方法和实例方法具体应用(举例)

3、__new__和__init__区别

4、深浅拷贝

5、哪些数据类型可变哪些不可变

6、可变与不可变类型区别

7、Python多线程

8、Python是否是脚本语言

9、Python是面向对象编程还是面向过程编程

10、为什么是面向对象

11、函数传入列表用什么参数*

12、传入字典用什么参数** 

目前只记得这么多可能有几个忘了,将近30个问题有两个没答上来,忘记怎么表述了面试官会根据你简历写的内容问问题,所以你简历上的东西写的多少要了解些,不能很陌生。

定级D1,可能面试官觉得我学的都还比较基础,算法题太简单,导致我没什么发挥的空间。

技术二面(5月29日)

就问了问C语言编程内存管理的问题和遇到的一些坑。问了下数组和链表区别。问了用过哪些库做过哪些项目,然后介绍一下怎么做的项目,我讲解了一下resnet的深度学习项目。问我做了哪些工作,有没有遇到什么难题,我说遇到过,比如,训练稳定性以及泛化能力不强,于是采用一些方法优化性能。问我为什么要做这些优化工作,我说我只学了CNN,复试面试的老师可能会觉得我知识面不够广,于是想多做一点工作,以此弥补知识面不够广的问题。

算法题是leetcodeh100,三数之和。

这次算法题有地方发挥了,我用的算法和面试官所知道的算法不一样,并且做了很多性能上的优化,时间复杂度低很多,面试官对我评价比较好,因此定级D2,也导致需要加面一轮。

技术三面(6月15日)

等的有点久,但最终约到了面试官。

手撕代码:算法题是od题库里的一道题,和我之前刷过猴子摘蟠桃这道题目解法一样的,印象还比较深,考的是最大展厅人数限制。用二分法+贪心策略20min不到解决了。

八股问答:问的东西不难,问过数据库,但我说了解的不多,他就不多问。然后Python的数据类型,深浅拷贝。问了一下自己计算机知识的短板是什么,和以后未来想提升的方向。我把我的情况说全,考研,学过哪些知识,经历,然后面试官根据我的信息挑几个问问,但是问的不多。

薪资定级

技术三面过后,等到两天之后的周一,前面三位面试官开会讨论我最终的定级。

下午四点,HR告诉我待会主管会打电话过来,谈薪资的事情。

主管打电话确实只谈了薪资,刚开始就告诉我可以给我的薪资,有点低于我的预期,根据主管描述我应该是定D1级,主管问了问我的预期薪资,表示假如定级高一级的话确实能定到我的预期薪资,但是最终三位面试官合议后的定级还是定D1,此外主管表示会帮我争取一下,但幅度不会很大。

下午五点,主管再次来电话告诉我最终争取的结果,多加了1k。我表示已经可以接受了,毕竟我是非科班+零经验,可能面试表现的并不是那么好,但有这个工作已经比化工强不少了。

主管面(6月16日)

晚上7点40的面试。先自我介绍。

自己相对于应届生和有一年工作能力的人有什么优势。

自己最近一年干了什么。

压力和困难最大的时候是什么时候,怎么解决的。

本科期间有没有和同学或者师兄师姐做过什么课题项目。

为什么从化工行业跳到计算机行业,你在工作选择上是怎么博弈的。

可能还有,但想不起来了。

反问是,华为的培养体系。

我这里有两个回答写出来了,给大家一个参考。

1、问:自己相对于应届生和有一年工作经验的人有什么优势。

答:首先这两年我是一直有在学习新东西,相比于应届生,他们大四课程任务少,在学新东西上可能有所懈怠,我能更快适应去学新东西,熟悉公司业务流程,对于已经有一年工作经验的人,我谈不上多大的优势,但是我的学习能力是比较强的,潜力高,从我的考研经历,以及机考成绩到面试官的评价可以证实这一点。

2、问:为什么从化工行业跳到计算机行业,是化工行业就业不好吗,你在工作选择上是怎么博弈的。

答:首先化工行业就业率是比计算机好很多的,化工行业的薪资相比于计算机确实会低些,但并没有让我难以接受,但让我选择离开化工行业最大的一个因素是要倒班。其次,在我看来化工企业它的职级晋升是比较固化死板的,并且工作对我能力的锻炼和提升是比较小的,我难以通过工作提高自身能力,获得更高的发展空间。我的性格还是比较喜欢自由一点的工作,能够在工作中锻炼自己能力,以此谋求更好的发展机会,我更倾向于这样的工作。然后我自己其实从高中毕业就开始接触计算机的东西,刚开始是Python,大二学C语言,后来考研学计算机的核心课程,之后为了准备考研复试又学深度学习知识,可能我的一些同学并不理解我为什么要去学这些,但这是我一直以来的兴趣所在。

主管听完回复说:所以你就是希望找个能发挥你擅长的和感兴趣的东西的工作是吧,我说对的。

最终不出意外,主管面通过了。

结语

跳槽计算机是不容易的,尤其是现在的形势,无论我走哪条路都很艰难。我第一次考研考24科软,360分,懂得都懂,第二次考国科大25杭高院智能学院AI方向,357,复试被刷,懂得都懂,两次全抄顶了。我想正常人遇到这种事应该知道压力有多大吧。还好我心理承受能力强,我觉得还是有退路的,也感谢华为od给机会。我没有想太多就全心投入在华为od的刷题和面试准备中。

总之未来路还长,华为od是我的第一份工作,在这里我最希望获得的是能力的锻炼,工资并不是最重要的,其实这工资已经很不错了(对于我以及我原本所在的化工行业里)

致谢

最后要感谢香云姐姐,第一次找工作就能遇到这么善良负责的HR,这大概是我这么多不幸的经历里最幸运的事吧。对于我的很多疑惑她都是乐于解答,无论是机考,还是每一次面试,都会提前告知我注意事项,面试前都会提前提醒我参加面试。从机考到后面的五轮面试都顺利的进行,离不开她的帮助。

#Python面试分享##华为OD求捞##华为OD社招##华为ODoffer##华为OD算法#
全部评论
现在华为od机试都是双机位了吗
点赞 回复 分享
发布于 昨天 19:44 贵州
先谈工资之后再进行主管面试吗
点赞 回复 分享
发布于 昨天 17:52 安徽

相关推荐

今天 01:13
门头沟学院
极力劝退985/211的硕士还拿低级(≤14级)进华为,特别是理工科类,特别是上深地区。有的人可能想能进华为就行,后面慢慢升级。有这想法的极力劝退。公司一定会有13/14级,但985/211的硕士拿这级别就是自取其辱,浪费高等教育资源。辛苦培养的硕士博士高学历人才,是为带领中华民族迈向伟大复兴的道路,是中华崛起之未来领袖人物。名校硕博,自贱身份来华为,犹如大夫挑粪,大材小用。从13/14级,即便再加班加点,年年拿a,也得n年才能达到18级成为领袖人物,并且起点决定上限,设想起点16/17级,努力奋斗,正是壮年时(35)便可成长为20-22级,甚至更高,并带领部门持续盈利,造福部门与社会。13/14级喽啰就是打工仔,按时间精力算永远成不了领袖,内部统称为人力而非人,多人就是人力矩阵,多项目搞就是项目并行,并时刻要求高效准确按时完成任务,极力压榨员工时间(包括午休,晚上下班之后时间),低级别员工想升级只能互卷工作时长和工作任务,某些部门也极其不尊重劳动法,想方设法压榨劳动剩余价值,剥夺下班自我学习提升的时间,无法提升个人其他能力,就会被锁定在当前岗位和职级。甚至要求周末加班完成工作任务,因为低级别员工即便是周末双倍工资公司也承担的起。换来的是员工时间投入,项目提前完成。另一个套路是股权,拿捏人心的利器,一来让领导极力想方设法压榨底层员工让公司更好发展,二来让底层员工有期待更加油干,三来是解决公司资金周转问题。拿今天的钱作为明年分红资金,一年卷一年,卷多了就称股权被稀释,减少分红。下个项目进一步压缩人力和研发时间。直到形成项目xx工厂,拿来即用,裁减人力,缩减成本。也就是裁员进行时。(其他带科技属性公司同理)。菊厂喜欢部队的那一套,领导犹如排连团师长,人力矩阵当排兵布阵,想打胜仗敢打敢拼是好事。但当兵是为国家,国家给予军人崇高荣誉,并附带医疗和退伍岗位安置保障。来菊厂讲部队那套,但又没部队那套福利待遇和荣誉,更多的是自私自利自我赋予荣誉。其他工作可能是工作,菊厂工作绝不是工作,是劳作,最终劳命伤财。劝勉,能跑就跑。
华为工作强度 1206人发布 投递华为等公司10个岗位
点赞 评论 收藏
分享
06-23 11:43
门头沟学院 Java
allin校招的烤冷面很爱看电影:我靠,今天中午我也是这个hr隔一个星期发消息给我。问的问题还是一模一样的😅
点赞 评论 收藏
分享
评论
点赞
7
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务