今天在掘金上看到了一篇面经,趁热分享给大家,半年经验拿到华为OD offer,整体难度适中,还是非常具有参考价值的!下面是详细的面经!
22届,半年工作经验,离职后找工作时有HR联系过来,试着投了简历。
原公司主要做电商这块,对电商业务比较熟悉,期望能进入类似的部门,让HR帮忙找了比较匹配的业务线,好评
总体流程很快,HR很负责经常帮忙催进度,从笔试到发offer差不多两周。
笔试
笔试395,难度不是很高
第一第三题dp和哈希表100%,第一题题目一开始没看懂意思,看了挺久。第二题印象比较深,时间复杂度O(n)有一个用例超时了,95%
第二题:为新员工找友好度最高的座位,数组表示座位情况,如11101211100111211
,0为空,1为老员工,2为墙壁。空座位左右连续老员工数量等于该座位友好度,遇到墙壁则好友度清空。
初始思路是遍历数组,遍历到0时查找左右友好度情况,但是会有重复计算的问题,想着优化一下。
改为遍历一遍数组,遍历的同时维护左友好度和右友好度以及当前是否已记录座位。初始状态未记录座位,增加左友好度,当遇到座位时判断是否已记录座位,已记录时计算一次结果(左+右),未记录时更新状态。遇到老员工时根据是否已记录座位增加左/右友好度,遇到墙时计算结果+清除友好度。
性格测试
按照HR给的注意事项选就行,注意前后选择的一致性,选择正向的答案
HR资面
简单聊了一会儿,HR说武汉和深圳都能去,武汉比较缺人。我觉得有点远,想去深圳,HR说面试完再确定也可以。最后也去的深圳
-
离职原因 -
期望工作地,期望薪资 -
最近情况(投简历、复习、面试)
技术面
技术面都是技术问题+编程题,技术问题答得一般般,面试当天是周五,上午一面晚上二面,那周前几天已经面试了10场没啥状态,有点开摆了,编程题都AC
编程题是分享屏幕,然后用自己电脑上的ide编写,写完面试官会给用例
一面
八股问的都不是很深,记不太清了,各个方面有提到,会的就简单聊一下,不会的就换其他问题
编程题:找出有效mac地址,通常表示为12个16进制数,如:00-16-EA-AE-3C-40
。给一串字符串, 如00-16:aA-FE:3C-40-11-99-AA-Z
,找出其中所有的有效mac地址,不区分大小写以及:和-
解法:MAC地址有固定长度,思路是滑动窗口判断当前部分是否为有效Mac地址。首先先对原字符串
LowerCase()
,再将:替换为-,方便验证。验证的地方主要是窗口内是否为12个16进制数,并且通过-连接。
二面
编程题面试官先给题目问有没有做过。答没有做过原题,有一点思路,讲了思路以后面试官确认没问题就开始写。
-
聊项目 -
面向对象和面向过程的理解 -
平时使用哪个版本的JDK(JDK8),JDK8和旧版本有哪些不同的地方(讲了会儿与JDK7的对比,集合优化、JVM、新特性),lambda表达式(有什么优点和缺点?语法精简/不好debug,使用时有些限制) -
泛型,用处、应用,原理,运行时程序怎么知道是哪种类型
线程池7大参数,分析线程池工作时各参数变化情况(初始线程池容量x,最大容量y,队列长度z,来了n个任务,讲一下会发生的情况)
-
Spring AOP (原理、应用) -
MySQL explain -
单元测试 -
设计模式知道哪些,应用
编程题:给一个01矩阵,找其中1表示的最大面积正方形
0010
1110
1100
解法:遍历矩阵,找到为1的点后以这个点作为正方形的左上角,扩展正方形,同时计算最大面积
综面
面试官表示他们部门招人比较看重编程能力
-
问简历上的项目,更侧重对业务的提问
-
日常学习方式(看书、刷题),为什么要刷题,觉得有用吗
-
上一段工作中的收获
-
期望薪资
感谢阅读,希望对你有所帮助 :)
来源:juejin.cn/post/7215116017038671927
精彩推荐
原文始发于微信公众号(Java面试题精选):华为 OD,拿下了!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/129156.html