面试时间:2021年7月13日 16:30 面试形式:在线网站写算法题+电话面试 面试时长:40min笔试+35min面试 面试感受:这种形式第一次见,到面试时间点,面试官给我的邮箱发一个测评网站,给我打电话让进入这个系统,给40分钟时间做三道题,可以使用本地IDE再粘贴上去,但是他可以实时看到系统界面。40分钟后打电话让讲讲算法的思路,讲了好一会儿我以为面试结束了,结果说现在我们正式开始面试吧 : ( 我还是太菜了,很多问题回答不上来,秋招再来试试吧。面试官态度很好,一直说没关系,试图找到一个我可以回答上来的问题,笑死根本找不到🤣 面试题目: 一、算法题1./*** 找出数组中第k大和第m大的数字相加之和* 说明:实现一个方法,找出数组中第k大的和第m大的数字相加之和* 示例:*   let arr = [1,2,4,4,3,5], k = 2, m = 4*   findTopSum(arr, k, m); // 第2大的数是4,出现2次,第4大的是2,出现1次,所以结果为10*/2./*** 实现一个节流函数* 节流是JS中重要的概念,尝试实现一个节流函数——它返回一个新函数,新函数即时连续多次执行,* 但也只限制在`wait`的时间执行一次。并要求此节流函数第一次运行就会执行fn*/const throttle = (fn, wait) => {}3./*** 获取嵌套数组深度* 说明:给定一个带嵌套的数组,实现一个方法可获取嵌套数组的最大深度,*   数组无嵌套子数组,则返回0,有一层嵌套子数组则1,依此类推。* 示例:*   getArrayDeep([1, 2, [3, [1, [0]]]]); // 返回 3*   getArrayDeep([]); // 返回 0*   getArrayDeep([[[[]]]]); // 返回 3*   getArrayDeep([0, [2], [2, [3]]]); // 返回 2*/function getArrayDeep(a) {}讲算法思路额外问到的问题:快排在最好情况和最坏情况下的时间复杂度是怎样的apply和call有什么区别二、面试题1.作用域和作用域链2.浏览器垃圾回收3.宏任务、微任务setTimeout(()=>{console.log('2')})new promise().then(()=>{console.log('3')})console.log('4')执行结果是什么?4.Hook为什么不能用在if语句或循环中5.dom元素写ref=XXX是什么意思6.CSS画一个边长小于1px的线段或div怎么实现
点赞 2
评论 5
全部评论

相关推荐

投递地平线等公司10个岗位
点赞 评论 收藏
分享
醉蟀:你不干有的是人干
点赞 评论 收藏
分享
不多说了,看图吧
MomonKa:实际上是,机房机器有些高度,问问你身高,有没有女朋友是看你能不能猛猛加班
你最讨厌面试问你什么?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务