文章目录
- 华为OD统一考试A卷+B卷 新题库说明
- 面试者信息
- 面试流程
- 笔试
- 题目详情
- 性格测试(综合测试)
- 面试经历
- 技术面
- 一面
- 二面
- 编程题
- 项目经验
- 技术知识
- 编程题
- 综面
华为OD统一考试A卷+B卷 新题库说明
2023年5月份,华为官方已经将的 2022/0223Q(1/2/3/4)统一修改为OD统一考试(A卷)和OD统一考试(B卷)。
你收到的链接上面会标注A卷还是B卷。请注意:根据反馈,目前大部分收到的都是B卷。但是仍有概率抽到A卷。
A卷对应2023的新题库(2022Q4 20223Q1) B卷对应20022部分考题以及新出的题目
专栏:2023华为OD机试(A卷+B卷)(C++JavaJSPy)
专栏:2023华为OD机试(A卷)(C++ Java JS Py)
专栏:2023华为OD机试(B卷)(C++ Java JS Py)
面试者信息
- 语言:java
- 工作经验:半年
- 目标部门:电商业务
面试流程
总体流程很快,HR很负责经常帮忙催进度,从笔试到发offer差不多两周。
-
笔试
-
HR资面
-
技术面
-
一面
-
二面
-
综面
笔试
- 笔试得分:395
- 难度:不高
题目详情
- 第一、第三题:dp和哈希表,100%通过。第一题题目一开始没看懂意思,看了挺久。
- 第二题:为新员工找友好度最高的座位,数组表示座位情况,如11101211100111211,0为空,1为老员工,2为墙壁。空座位左右连续老员工数量等于该座位友好度,遇到墙壁则好友度清空。
- 时间复杂度O(n),有一个用例超时了,95%。
- 初始思路是遍历数组,遍历到0时查找左右友好度情况,但是会有重复计算的问题,想着优化一下。
- 改为遍历一遍数组,遍历的同时维护左友好度和右友好度以及当前是否已记录座位。初始状态未记录座位,增加左友好度,当遇到座位时判断是否已记录座位,已记录时计算一次结果(左+右),未记录时更新状态。遇到老员工时根据是否已记录座位增加左/右友好度,遇到墙时计算结果+清除友好度。
性格测试(综合测试)
按照 HR 给的注意事项选就行,注意前后选择的一致性,选择正向的答案。
面试经历
- HR 资面:简单聊了一会儿,HR 说西安和深圳都能去,西安比较缺人。我觉得有点远,想去深圳,HR 说面试完再确定也可以。最后也去的深圳。
- 离职原因:期望工作地,期望薪资。
- 最近情况:投简历、复习、面试。
技术面
技术面都是技术问题 + 编程题,技术问题答得一般般,面试当天是周五,上午一面晚上二面,那周前几天已经面试了 10 场没啥状态,有点开摆了,编程题都 AC。
- 编程题是分享屏幕,然后用自己电脑上的 IDE 编写,写完面试官会给用例。
一面
- 八股问的都不是很深,记不太清了,各个方面有提到,会的就简单聊一下,不会的就换其他问题。
- 聊项目,业务 + 技术。
- Java 集合。
- SpringBoot 自动配置原理。
- MySQL 索引原理,工作中数据库优化的案例。
- Redis 数据类型和原理。
- 编程题:找出有效 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和旧版本之间的不同之处,如集合优化、JVM和新特性等。
- 讨论了lambda表达式的优缺点,如语法精简和不易调试等。
- 泛型的用处、应用、原理以及程序在运行时如何知道是哪种类型。
- 线程池的7个参数,分析线程池工作时各参数变化情况(初始线程池容量x,最大容量y,队列长度z,来了n个任务,讲一下会发生的情况)。
技术知识
- Spring AOP的原理和应用。
- MySQL explain。
- 单元测试。
- 设计模式的应用和了解的种类。
编程题
给一个01矩阵,找其中1表示的最大面积正方形。
例如:
0 0 1 0
1 1 1 0
1 1 0 0
解法:遍历矩阵,找到为1的点后以这个点作为正方形的左上角,扩展正方形,同时计算最大面积。
综面
面试官表示他们部门招人比较看重编程能力
问简历上的项目,更侧重对业务的提问
日常学习方式(看书、刷题),为什么要刷题,觉得有用吗
上一段工作中的收获