Shopee前端二面面经

问的东西不多,先问了下项目,然后居然问了体系结构,问了我内存的读取相关的,我就说不记得了
之后问了httponly和协商缓存,怎么学习前端的,其他的就记不清了,
最后让我在本地写了个程序(用的是zoom视频会议,分享屏幕),面试官觉得性能太慢,改了两次后面也没写出来

程序很简单,就是对有序数组去重,但是要求在原数组上操作,于是一些骚操作(比如用set)就用不了了,甚至新建数组也不行

一开始,我忘了是有序数组,就用map记录数组的每一项,如果重复就用splice一个个删除,然后面试官说这个方法太慢了,如果有1万个0,运行会很慢

我才想起来是有序数组,然后就想找重复的相同元素一次删除,比如连续的1,除了第一个之外后面几个一次删除,然后面试官评价还是很慢,如果数组是[1,1,2,2,3,3,4,4...]这种,还是每次删除一个数组

于是我才想到那就干脆最后一次删除,刚开始把数组前面相同元素都替换成不相同的就好了,然后再截尾。然而写的完之后发现结果有点问题,然后时间原因就没有继续了,后面我自己看了下,发现找到非重复项,交换顺序后忘了写break结束循环,结果导致每次都是和一个数交换顺序。

感觉后面的算法面试挺好的,我写的程序性能不够也会提醒,感觉和其他面试相比可以有一点成长

这里贴一下我昨天下午面试完之后改的代码,i记录的是数组重复项,j用来查找数组中没有重复的项,语言当然是js

(前面两行是我试下速度,拿了10万个0看看,因为面试官说我前面的太慢,算个10万个0得很久,实测下来现在1s不到就结束了,hhh)
// arr = Array.from({ length: 100000 });
// arr.fill(0);
arr = [1, 1, 1, 2, 2, 3, 3, 3, 3,3]

reduce = (arr) => {
  let map = new Map();
  let i = 0;    
  for (let j=0; j < arr.length; j++) {
      if (!map.has(arr[j])) {
        i != j && ([arr[i], arr[j]] = [arr[j], arr[i]]);
        map.set(arr[i++], true);
      }    
  }
  arr.splice(i, arr.length - i)
};

reduce(arr);

console.log(arr);




#shopee前端面经##Shopee##前端##面经#
全部评论
LeetCode26
3 回复 分享
发布于 2020-05-11 14:24
快慢指针
1 回复 分享
发布于 2020-04-21 15:59
请问楼主,一面之后多久收到二面通知的?
点赞 回复 分享
发布于 2020-04-18 23:07
是不是一个帅气的留着寸头的面试官昂
点赞 回复 分享
发布于 2020-04-11 22:50
10 号下午面试的吗?
点赞 回复 分享
发布于 2020-04-11 20:40
让我估计下计算机读取1kb数据要多长时间,我说我不会😂
点赞 回复 分享
发布于 2020-04-11 19:33
其他问题都好像跟你一样,我看其他人好像跟我们不是同一个面试官
点赞 回复 分享
发布于 2020-04-11 19:31
我跟你是一个面试官,我是直接用你最后说的那方法,不过全程他都没怎么提示我,我就在那里写了十几分钟,他也等了我十几分钟...
点赞 回复 分享
发布于 2020-04-11 19:31

相关推荐

10-19 10:28
已编辑
西南石油大学 后端工程师
团孝子已上线feeling:面了很多家公司,能感受到目前只有小公司+外包喜欢问八股。大厂虽然也问八股,但是是从实习、项目中进行提问,并且大厂会问很深,面试官也会对你的回答进行思考➕追问,所以准备大厂面试前一定要备好相关资料。对于算法,我做的是codetop前100+力扣hot100+力扣高频150,面试中实感hot100就足够,基本上只要是hot100就秒答。对于项目和八股,我做的也是烂大街的星球项目,八股则是看小林和问ai,自己也写了很多技术博客和画了很多思维导图,并且自己也尝试用嘴巴说出来,不只停留于纸面。运气也很重要,必须要让面试官/HR看到简历才行,所以建议投递时间是下午两点。tl:第一岗位9.9&nbsp;投递9.10&nbsp;一面(一面评价:最近见过最强的大三,结束五分钟后约二面,都晚上九点了不下班吗)9.11&nbsp;二面(三道算法a出两道,反问评价:经验不够等横向,我实习生要啥经验)9.21挂(实习时间过短+其他原因,想要一年实习的,为什么不招个正职)第二岗位10.10投递10.11约面(主管打电话,说看到我之前投递记录了想要我挂qa职进去干后端,同意)10.14&nbsp;一面(无八股,主动说确实很强,意愿很强)10.16&nbsp;oc其余,友邦,东软,东华,惠择,用友oc已拒京东测开一面挂(投后端被测开捞)腾讯测试已拒(投后端被测开捞)ps:表扬惠择的主管面,没怎么问技术(可能是一面面试官沟通过了),全程一起讲大道理,解答了心中很多疑惑,也告诉我以面试官角度来看怎么选候选人,如果可以下次一定选惠择
HeaoDng:美团好像可以触发一面通
点赞 评论 收藏
分享
11-04 19:05
已编辑
东莞城市学院 单片机
不知道怎么取名字_:你这个要实习两年?哪有这么久的,感觉就是即使你毕业了,但还按实习的话,是不是不用给你缴社保公积金啥的
点赞 评论 收藏
分享
评论
5
22
分享

创作者周榜

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