便利蜂2020春招笔试 前端校招 3月27日一面 二面

下午五点半二面
第一部分是深挖项目,问项目功能
考察的是沟通能力。。
第二部分问项目难点
我回答了一些树的递归的使用
然后面试官会引申到其他数据结构和算法
我被问了图的两点最短路径,不会。。。
应该稳定心态慢慢分析,然后问面试官对不对,而不是放弃回答
后来就反问环节
大概是凉了
——————————————————————————————————————————————————————————————————
3月27日一面十几分钟
首先是说笔试各个题目的思路
然后问一道简单的引用类型数据问题
然后问技术栈和项目(没有讨论技术细节)
最后就聊一下怎么学习,怎么学前端
总体来说就只有吹牛逼
然后到反问环节了
反问他们用什么技术栈是最好的问题了,他们会详细介绍产品情况
——————————————————————————————————————————————————————————————————
三道编程题两个小时,不难

第一题
描述
箱子的容积为3,给出货物体积的数组,求最多恰好能装多少箱
解法
1.遍历一遍inArr,将是3的倍数的数除以3加到box数,不是的数用另一个数组arr存起来,切求和为sum
2.给arr从小到大排序
3.求出arr中各项组合,sum从小的开始减 如果sum减去这个组合的数后是3的倍数 则退出循环 box+=(sum-n)/3

第3步的求组合方法,用bfs思想
例子arr = [1,2,3,4,5]
zuheArr = [0] len=1

放入1
for(let i = 0; i < len; i++){
zuheArr.push(zuheArr[i] + 1)
}
结果
zuheArr = [0,1] len=2

放入2
zuheArr = [0,1,2,3] len=4

放入3
zuheArr = [0,1,2,3,3,4,5,6] len=8

这样可以得到所有情况,相当与一层一层数

优化的话可以每求一层树,就把上一层的给删掉,这一层用来求box+=(sum-n)/3



第二题是单向链路求环
输入[[1,2],[2,3],[3,4],[4,5],[5,3]]
输出环的长度3
代码没有保存 不知道错在哪里
我的代码思想
1.把str处理成[1,2,2,3,3,4,4,5,5,3]数组
2.数组去重[1,2,3,4,5],这些就是图结点
3.创建对象给出下面格式
{
'1':{
in: 0,
out: [2]
}
'2':{
in: 1,
out: [3]
}
...
}
4.change = true;
while(change){
change = false;
看看是否有入度为0的节点,有则删除之,并为out数组中指向的结点的入度减一  change = true
}
5.最后输出剩余节点数(环数为1时正确)

只过了75%
当时没时间调试了,不知道题目要求怎么输出,现在想想第五步应该要处理多个环的情况



第三题是烤肉风扇开关时间
比较简单的ifelse就可以 故不阐述
#便利蜂##前端工程师##笔试题目##面经#
全部评论
第一题,因为是求3的倍数,所以从组合里删去最多两个数就可以得到3的倍数,所以查看一个和两个的组合的最小符合条件的数即可 第二题,用快慢指针解,不需要考虑多个环
1 回复
分享
发布于 2020-03-23 22:21
请问正确率88%这种会得分吗?
点赞 回复
分享
发布于 2020-03-23 22:06
博乐游戏
校招火热招聘中
官网直投
把这个[[1,2],[2,3],[3,1]]解析成:  [ {head: 1, foot:2}, {head:2, foot:3},  {head:3, foot: 1} ] if (item.head>item.foot) {   print(item.foot - item.head + 1) } 这种写法对吗
点赞 回复
分享
发布于 2020-03-24 13:11
22笔试没收到面试通知
点赞 回复
分享
发布于 2020-03-27 18:27
笔试第一题ac,第二题88%,第三题忘了多少没ac,没有收到面试
点赞 回复
分享
发布于 2020-03-27 18:37
java的有人有后续了吗
点赞 回复
分享
发布于 2020-03-30 15:32
第一题直接全部数模3,总共分三组,然后余数为1,和2的进行组合就好了。我便利蜂3道全A,但是面试不敢去了
点赞 回复
分享
发布于 2020-03-30 16:27

相关推荐

头像
03-18 09:09
Java
点赞 评论 收藏
转发
点赞 评论 收藏
转发
1 8 评论
分享
牛客网
牛客企业服务