美团|一年经验Java程序员,面试18K华为OD岗位的真实过程


美团|一年经验Java程序员,面试18K华为OD岗位的真实过程
文章图片
美团|一年经验Java程序员,面试18K华为OD岗位的真实过程
文章图片
美团|一年经验Java程序员,面试18K华为OD岗位的真实过程
文章图片
美团|一年经验Java程序员,面试18K华为OD岗位的真实过程

先说我的情况 , 双非一本 , 19年毕业 , 计算机专业 , 只过四级 , 刚刚一年经验 。 互联网的项目 , 只是在银行干过一小段时间 , 还是实习 , 之后就是业务型的增删改查公司 , 传统行业 。 (总的来说就是要啥没啥 , 根本没有吸引眼球的地方 , 运气好可能才会保证简历不被筛掉的那种) 。 然后梦想就是去大厂 , 虽然是程序员 , 但是真的跟互联网没什么关系的那种 , 天天CRUD , 所以想尽早去 , 不想一个经验用三年 。 也只想去杭州 , 因为杭州整体氛围就很好 , 比起北上广 , 我觉得在杭州可能会更容易一些 。
华为OD面试华为OD岗位:
OD岗位就是那种外包性质的岗位 , 不过我面的这个岗位上说是 同工同酬 , 编制在德科 , 所以如果面过了就只算半个华为人吧 。
为什么不直接去面正式员工的岗位?没机会!
面试流程是很规范的 , 如果是约线上电话面试会跟你打电话提前确认时间 。
笔试也是有一段时间去准备的 。
先是一次机试 , 时间比较宽裕 , 应该是从题库里面随机出的三道题目 。 应该只要总体分数过了70分左右就可以面试了(100分制的话) 。 自己估计一下就好了 。 比如我的是两个简单的 , 和一个稍微难一点的 , 我就把两个简单的做了 , 难的那个保证有个40%左右的通过率就好了 。 (当然这是我这种算法和数据结构比较渣的同学就可以用这种办法了 , 大神就随意啦)
我的机试题目:
题目一:
1、输入小明的身高和他们班其他小朋友的个数
比如 100 5
2、输入这5个小朋友的身高 中间用空格隔开(身高的范围是0-200)
98 99 100 101 102
输出
按照跟小明的身高差去排序 , 身高差相同 , 个子小的排在前面
100 99 101 98 102
题目二:
输入一个字符串 和一个标志
例子: aA1bB2cC3 1
假如这个标志是 1 就把字符串中小写字母反转输出 cA1bB2aC3
假如这个标志是 2 就把字符串中大写写字母反转输出 aC1bB2cA3
假如这个标志是 3 就把字符串中数字的位置反转输出 aA3bB2aC1
题目三:
先输入一个行数
比如说是2 再输入两个字符串(用逗号隔开)
454
545
然后输入操作的步骤数目
比如说是2 , 每一次输入标志了上面二维数组里面的两个数字
0002 00代表了第1行第一列的4 02和第一行第三列的4
(如果这两个数字能用三根短线连起来 , 并且相等 , 那么就把这两个位置上的数字变成0)
1001 同上(10是5 01也是5)
如果输入的多组操作 , 都能正常完成数字的消除 , 就返回0k
如果有一组操作存在错误 , 就返回这个操作的下标 。
分析错误的原因:操作里面指明的位置在二维数组里面没有下标越界 , 两个下标的值不相等 , 或者就是不能用三个短线把这两个数连起来
之后是线上面试 , 原本说是视频面试的 , 因为华为好像当场要手写算法 。 但是后面又改成了电话面试 , 口述算法实现思路 。
1、JVM的垃圾回收机制 , 后面是类加载子系统(这两个问题我还ok)