【2022百度秋招提前批】二面挂
秋招提前批陆陆续续投了十多家了,只有百度一家公司愿意搭理我,可怜的我啊
07-25 一面(35min)
自我介绍
介绍一下腾讯做的离线日志项目
html 解析流程(css、js、图片这些资源的加载顺序)
js 事件循环
介绍一下字节做的项目(断点续传、超时重传怎么做的)
算法题:求两个字符串的最长子串(不是子序列)
暴力解法:
function solution(a, b) { if (a.length > b.length) { [a, b] = [b, a] } let res = 0 for (let i = 0; i < a.length; i ++ ) { for (let j = i; j < a.length; j ++ ) { const str = a.slice(i, j+1) if (b.includes(str)) { res = Math.max(res, str.length) } } } return res }
动态规划解法:
function solution(a, b) { let res = 0 const dp = Array(a.length+1).fill(0).map(() => Array(b.length+1).fill(0)) for (let i = 1; i <= a.length; i ++ ) { for (let j = 1; j <= b.length; j ++ ) { if (a[i-1] === b[j-1]) { dp[i][j] = dp[i-1][j-1] + 1 } else { dp[i][j] = 0 } res = Math.max(dp[i][j], res) } } return res }
总结:一面是一个很温柔的小姐姐,问的问题都比较基础,所以很快就结束了,中间算法题会和你一起排查讨论,面试体验很棒
07-28 二面(1h)
自我介绍
从项目中挑一个你觉得做得最好的介绍一下
飞书实习做的项目有多少人参与,飞书文档有哪些类型?
文档的格式迁移底层的原理是什么?
腾讯实习做的离线日志具体是怎么做的?支持了多少个项目?
支持哪些日志类型?日志的参数格式是怎么约定的?
对于一个对日志要求很高的项目(广告),怎么去准确的判断日志有没有丢失?
怎么去统计的某一个页面用户的留存时间,你怎么知道用户跳去其它页面或者关掉了页面?
微前端怎么去实现css样式隔离的?平时怎么写css的?
微前端怎么实现 js 隔离的,沙箱的实现方式有几种?
react 的函数式组件和类组件你一般用哪一个,它们两个的优缺点?
状态管理库你用过哪些?分别都适用于什么场景
setState的同步/异步问题你怎么理解的?
算法题:多层嵌套的数组,扁平化后去重然后再排序
去重如果不用 set 还有多少种方式,有没有更高效的方式?
排序有哪几种?时间复杂度,分别适用于什么场景?你觉得 sort 方法底层用的是什么排序方式?
如果让你统计上面的函数到底运行了多久,你怎么去统计?performance api?
在不支持 set 的浏览器上使用 set 有什么办法?(polyfill) 原理是什么?
让不支持高级css属性(比如grid布局)的浏览器支持这些属性有什么办法?原理是什么?这个没答上来....
总结:二面是一个酷酷的小姐姐,应该是个前端小组长。个人感觉有点上难度了,项目挖的很深,几乎没有什么八股文,都是基于实际场景问的问题,发挥的有些一般,有几个问题答得不是很好,不知道G没G
08/01更新:官网流程共享中, G。
#百度提前批##2022秋招##前端面经##面经##前端工程师#