校招 未知部门 / 前端 / 多轮
[面试日期] 2025-03-26 [面试时长] 未知
[学校背景] 南京邮电大学 | 双非 [学历背景] 未知
[发布人] 面试之星官方收录
<h2>华为OD-前端面经</h2>
<p>华为OD-前端面经</p><ul><li><strong>背景:</strong></li></ul><p>二年前端开发经验,211本科软件工程,找的前端岗位base杭州</p><ul><li><strong>一、机试</strong></li></ul><p>机试共三道算法题,分成两部分。其中第一部分是12小题,第二部分是第3题。不能同时做两部分,必须先提交一边,才能开始另一边。所以要安排好时间。 </p><p>算法题提前准备,刷leetcode常见题型,熟悉你所使用的语言的常用字符串操作,感谢hr栗栗提供的笔试参考资料。</p><p>1、模拟队列</p><p>题目比较长。提供n个执行者和m个任务,一个队列,给出每个任务的入队时刻和所需执行时间。如果队列满了,抛弃掉队列里最老的任务。执行者一旦空闲就会去队列里去最老的任务。当队列满的时候,如果同一时刻既有任务完成又有任务入队。则先从队列取出最老的任务,再将新任务入队。</p><p>输出最后结束的时刻和被抛弃的任务数量。对所有输入的时刻t,都有1<=t<=1000</p><p>个人思路是 遍历1-1000时刻模拟过程,代码比较复杂。最后通过90% </p><p>2、射箭比赛,每个选手有编号,每个选手射箭若干次,将每个选手的成绩取出最好的3个累加即为该选手的最终成绩,如果选手射箭成绩小于3次不统计该选手成绩。将选手最终成绩降序排列,输出选手编号。若成绩相同,编号大的排在前面。</p><p>输入三行,第一行一个整数,代表所有射箭次数; 第两行,依次给出每次射箭的选手编号;第三行,依次给出每次射箭的成绩。</p><p>简单题,统计并排序就行了。最后通过100%</p><p>3、leetcode原题 402. 移掉 K 位数字 题目描述基本相同</p><p>给你一个以字符串表示的非负整数 num 和一个整数 k ,移除这个数中的 k 位数字,使得剩下的数字最小。</p><p>例如 num="2615371",k=4, 最后输出 131。</p><p>思路: 自己在草稿纸上从简单的情况模拟,来找到规律。</p><p>规律如下:每次删除第一个满足str[i] > str[i+1]的下标i,重复N次。</p><p>如 2615371 -> 215371 -> 15371 -> 1371 -> 131</p><p>如果某次遍历如果没找到 i,那就是删除最后一个。</p><p>最后输出的时候注意删除前缀0。</p><p>可以用stack堆栈优化,只用一次遍历。</p><p>最后通过100%(没用stack堆栈优化也全通过了)</p><ul><li><strong>二、技术一面</strong></li></ul><p>先是自我介绍+项目经历,项目这部分提前准备好怎么讲,想好可能会被问的问题。会根据你的项目提问,所以可以一定程度上诱导面试官问向你擅长的方向。</p><p>项目问完后是几道常规前端基础知识</p><p>了解原型链吗?怎么创建一个没有原型的对象</p><p>通过new创建一个对象的过程</p><p>css问题,高度坍塌原因和解决方式</p><p>sessionStorage和localStorage的区别,存储大小限制多少?</p><p>什么是闭包?闭包的用途?</p><p>……</p><p>最后是算法题(要在本地ide上写并运行,提前准备好环境): 每日温度</p><ul><li><strong>三、技术二面</strong></li></ul><p>同样自我介绍+项目经历,项目环节特意提了让我讲遇到的难点。然后是八股文问前端面试常规问题,如:</p><p>前端安全问题XSS和CSRF</p><p>防抖节流,定义以及使用场景</p><p>列举几个排序算法(追问了从一堆数中多次取出最大值的方法(最大堆),可能是因为我说到了堆排序)</p><p>……</p><p>最后也有一道算法题,非常简单,青蛙跳台阶</p><ul><li><strong>四、技术三面</strong></li></ul><p>由于一二面面评不一致我还需要加面,还是一样讲项目问项目,然后是八股文问前端面试常规问题</p><p>前端性能优化,几个指标,performance</p><p>前端跨域请求问题,项目中遇到的如何解决</p><p>js事件循环,宏任务微任务</p><p>因为我是科班,有问我js中对象/map的存储原理之类的</p><p>git操作,问了开发期间其他人有提交过代码,自己合入要怎么操作,我自己答了git rebase解决冲突后合入。然后还问了git rebase的其他用法。(这题按自己正常开发使用git方式答即可)</p><p>……</p><p>最后算法题是比较简单的动态规划题, 不同路径</p><p>技术面试总结:大部分时间是在 1、讲项目和根据你所讲的项目提问相关前端问题,也就是抓着项目问问题 2、做算法题。 而这两块都是能提前多做准备的,尽可能地充分准备好。</p><ul><li><strong>hr面:</strong></li></ul><p>自我介绍</p><p>上一份工作的经历/做的项目内容、自己的职责</p><p>工作地选择的原因</p><p>为什么选择来华为</p><p>加班情况</p><p>离职原因</p><p>期望薪资等</p><ul><li><strong>主管面:</strong></li></ul><p>电话面,普通聊聊,比较随和</p><p>当前情况</p><p>换工作原因</p><p>上家公司工作内容,团队人数,承担角色</p><p>我作为前端的工作研发流程(或者说一次需求流程)、自动化手段、交付节奏、代码重构</p><p>为什么从事前端 </p><p>团队协作代码code review怎么做的</p><p>聊了些对angularjs、vue、react等一些想法</p><p>平时怎么学习、算法怎么准备的</p><p>反问</p><p>最后就是全部面试通过后等审批环节和发offer后准备材料了。要十分感谢hr栗栗的帮助,从头到尾持续帮我去催进度,最后也也如愿以偿的快速收到offer。所以如果对华为 od 感兴趣的欢迎来找她!</p><a>#找工作#</a><a>#面经#</a><a>#od#</a><a>#华为od#</a><a>#华为OD#</a>
AI 推荐面试题
