华为OD机考心得

本人是在一个勉强一本的院校毕业的,学的也并不是计算机软件方向。因为并不太满意所学的专业的就业情况,感觉互联网行业会更加有前途,于是报了个Java的培训班学习了大概一年左右,才投递的简历。本来没想着能有大厂来找,没想着被华为给捞了。虽然OD基本算是外包的形式,但是毕竟是在华为研究所内工作,也能参与到项目的开发,最关键的是钱也能给到位,所以个人觉得算是个不错的机会。

华为OD的面试首先会有一轮机考,机考是在牛客网上做编程题。总共三道题,据说是一道简单两道中等,总分400分,150分以上就算通过。因为及格分数定的不是特别高,而且在培训期间个人也断续在牛客网和力扣上刷过题,所以感觉有机会,便答应了尝试一下。

机考语言是可以自己选的,本人只会Java所以就选的Java。机考与牛可网上的模拟考试差别不大,要开摄像头,不允许切屏(也就是没法用做题的电脑百度),然后要求用手机扫一下码,然后手机就进了一个小程序,估计离开这个小程序就算作弊了。

第一道题非常简单,求括号的最大嵌套深度。也就是会给出一个有效的带括号的字符串,比如"(1+(2*3)+((8)/4))+1",然后求括号的最大嵌套深度,这个例子里就是3。既然都是有效的字符串了,那直接for循环从左到右遍历呗,遇到左括号把答案+1,遇到右括号-1,不断更新最大值就行了。力扣上有一样的题,这里就不多描述了:

https://leetcode-cn.com/problems/maximum-nesting-depth-of-the-parentheses/
AC的代码如下:

第二道题,求解连续数列,题目描述忘了,简单来说就是给一个总和,以及连续正整数的个数,然后求这几个连续正整数的值。比如说和为525,数列个数为6,那么输出应该是85,86,87,88,89,90(85+86+87+88+89+90=525)

这道题也不算难,仔细想想就是一道数学题,假设数列的第一个数为x,那么有(x)+(x+1)+(x+2)+(x+3)+(x+4)+(x+5)=525,化简一下就是6x+(1+2+3+4+5)=525,括号里的数其实就是从1开始,差为1的等差数列,那公式就是(1+2+3+4+5)=(1+5)*5/2=15,当然不知道这个公式也没事,反正让机器遍历计算一下就完了。再根据这个思路一般化,设和为S,数列个数为n,那么有n*x+n*(n-1)/2=S,推出x=(S-n*(n-1)/2)/n(不知道等差数列的求和公式的话就是x=(S-(1+2+…+n-1))/n,其实也复杂不了太多)

第三题,数组去重和排序。简单来说就是给一个乱序的数组,比如1,3,2,3,3,2,4,4,4,5 ,先去掉所有重复数字,然后按去重前数字出现的次数从多到少排序,如果出现次数一样就按第一次出现的顺序来排序。比如上面的例子最后答案就是3,4,2,1,5。个人对这个问题的思路是可以建两个map,一个记录每个数字的出现次数,另一个记录数字第一次出现的位置,完了对去重后的数组按照这两个map的记录进行排序。其实也不算难,但是当时很紧张而且也没什么时间了,就没有写出来,最后直接返回了用例里的答案,管他呢,至少也有个几分吧。

总结一下,OD的机考难度不算特别高,如果经常刷牛客和力扣上的题的话,至少及格肯定是没问题的。考题的偏好的话,基于自己做的和参考其他的OD考试帖子,感觉比较喜欢考数组和字符串的问题,大家刷题可以着重注意一下这种类型的题!

补充一下,考试一定要多点提交,哪怕不能保证AC,只有部分用例通过也要提交,提交了过了多少用例就能拿多少分,有时候离通过可能就差这么几分。
最后,祝大家考试顺利!

--------------------------------------------------------------------------
更新!
感谢各位的关注,前段时间太忙了没空和各位互动,现在更新一下后续:
先回答一下各位问的比较多的问题:
Q1. 华为机考是核心代码模式还是ACM模式:是ACM模式,也就是说需要自己构造输入输出
Q2. 机考需要手机扫码吗:需要,防止利用手机作弊
Q3. 机考可以用本地的ide吗:可以的,不过由于机考会录屏,所以最好不要在ide里套模板

在通过机考后会发一个性格测试,这个没什么好说的,注意选轻松快乐压力小的选项就行,接口人还特地强调了要保持前后一致。
之后就是两轮技术面了,根据接口人说的主要是会面基础知识,项目(工作)经历和手撕代码,基础知识我记得问了Java的常用关键字,接口的用法,还问到了面向对象和面向过程的区别(这个答的不是很好),手撕代码感觉是最重要的环节,两轮分别问了判断回文串和二分法,和机考不同,都是很直白的直接问算法,没有像机考那样,题干都要理解半天。大概的写一下核心代码就可以了。
面试通过后就没什么特别的了,主管聊hr聊最后就是发offer体检和入职,整个过程还是比较顺利的。

最后,希望这篇笔经能对各位有所裨益,也衷心祝愿各位能尽早入职心仪的公司!
#华为od##笔经##华为#
全部评论
同在准备机考,麻烦问一下楼主定级多少吗?
1 回复 分享
发布于 2022-02-28 18:34
帮楼主顶一下!我机考也是做出第一题,第二题只过了部分用例,第三题也是直接构造了用例里的输入输出了答案拿了几分,最后也过了,感觉是勉强过了及格线。不过后续的面试流程还是比较顺利的,面试官也没有刻意刁难,顺利入职了华为,开心😆
9 回复 分享
发布于 2022-01-08 10:13
最近也在自学,自学这段工作经历空窗期怎么办呀,实话实说吗,还是简历包装下?
4 回复 分享
发布于 2022-04-26 18:20
牛哇,是哪天考的呀,报的哪个研究所
2 回复 分享
发布于 2022-01-13 09:07
武汉华为研究所有意向的可以留言给我
1 回复 分享
发布于 2022-01-28 14:05
我今天刚做了第二题 第二题确实很简单😂
1 回复 分享
发布于 2022-05-14 00:07
楼主老实人,我还以为这种远程机考都是“集体项目”呢,再不济也能“***啊”。
点赞 回复 分享
发布于 2022-01-08 10:13
是什么培训班要上一年😂
点赞 回复 分享
发布于 2022-01-08 19:25
楼主你好,机试的时候是ACM模式需要自己写输入输出,还是核心代码模式呀?马上也要机考了。祝楼主面试顺利
点赞 回复 分享
发布于 2022-01-10 21:40
楼主,我也是湖南农大的,可以加我微信2473487465交流么,同非科班,已走了所有面试流程,正在等审核流程,还没收到offer
点赞 回复 分享
发布于 2022-01-14 17:51
华为招聘测试相关岗位的OD,流程审批快,有意者欢迎骚扰,工作地点:长沙、东莞
点赞 回复 分享
发布于 2022-01-28 09:56
老大,求辅导班的联系方式。
点赞 回复 分享
发布于 2022-01-28 11:59
华为招聘测试相关岗位的OD,流程审批快,有意者欢迎骚扰,工作地点:长沙、东莞 详情链接:https://www.nowcoder.com/jobs/fulltime/detail?jobId=78265
点赞 回复 分享
发布于 2022-02-09 16:17
感谢分享,华为武汉研究所OD岗位 开发测试都招,欢迎私聊呀!真诚沟通,不忽悠😁
点赞 回复 分享
发布于 2022-02-18 16:10
你好,华为德科的用例,如果错了,有提示具体哪个用例错了吗?
点赞 回复 分享
发布于 2022-02-20 14:39
你这个题太简单了😂我碰到的好难
点赞 回复 分享
发布于 2022-02-22 23:47
楼主  请问面试难嘛?🤣看面经好像必须手机算法写出来才行
点赞 回复 分享
发布于 2022-02-28 21:50
请问可以重复点提交吗?还是只能点一次?
点赞 回复 分享
发布于 2022-03-14 10:19
你好,用例过了80%但是编程运行超时了,这个算分么
点赞 回复 分享
发布于 2022-05-01 23:11
请问大家,牛客中有个练习模式和考试模式(不提示未通过的测试用例,可提前适应正式笔试),机试时有算例不通过也不会提示哪里输出不一致么?有些corner case可能没想周全
点赞 回复 分享
发布于 2022-05-02 21:44

相关推荐

头像
10-27 21:51
已编辑
深圳大学 Java
#华为# #华为面试反馈# #华为求职进展汇总# 10.22一面二面一面 1h面试官很友善,经常会笑着提示我,但是题目却不友善。我的项目用了微服务,然后各种很新奇的问题就上来了,嗯,看来面试官就是搞这个的。手撕题题意很简单,主要考察思维。面试官人超好一直提示我怎么改进,后面也是不负期望的悟了,皆大欢喜了我俩都笑了。(感谢.jpg)二面 40min面试官中规中矩,常规八股+手撕,手撕不难但繁琐,思路清晰的话倒也还好,感觉是像考察基础编码能力。(一面手撕题目三四行,二面手撕题目整整两页纸!。。。代码写了一页纸)10.24主管面 35min主管人很好,很有领导气质,非常稳重,后面告诉我在华为工作了15年(!。聊的还挺投缘的,聊了四十多分钟。反问了技术栈、业务、培养机制、晋升渠道、团队氛围什么的,主管也很耐心详细的跟我解释说明了。主管在面试的时候说了,认可我的某些观点以及原因,当时就感觉十拿九稳了。不过还是有点小慌的原因是因为,意向地点我说东莞,问我考虑上海吗,我还是说更倾向于省内。后面结束后感觉应该说也可以考虑的(后悔.jpg)一些主管面过了的判断小技巧1.晚上11点45分会收到面试反馈邮件(这个我是准时收到了,看牛客其他人说没过的不会收到)2.官网刷新时间在面试完25h后准点刷新,我的面试结束短信时间是昨天10点06分,今天是11点06分53秒准时刷新的(不过看其他人说好像有例外?)
点赞 评论 收藏
分享
54 131 评论
分享
牛客网
牛客企业服务