2019字节跳动前端实习生笔试面试

公司:字节跳动
岗位:前端开发实习生

1)笔试:
一共有三次,我是第一次考的。
时间:2019-03-16 10:00-12:00
题目:4道基础编程题,主考算法,编程能力

  1. 第一题简单,忘了是什么了。。。
  2. 字符串的题,如果有三个相同的字母,则去掉其中一个;如果时AABB的形式,去掉第二个字母的第一个,即AAB
  3. 一圈人,每个人有不同的分数,要求分数比相邻的人高的,拥有的奖品数比邻居大,求出总共要准备多少奖品。每人至少有一个奖品
  4. n条绳子,不同长度,得到m条相同长度的绳子。输出最大长度值。

经验:审题不细致,因为最后两个测试用例给的输入为整数,我就默认用Scanner去读int,导致我的算法单元测试正确但提交时通过率一直为0%。
我是交了之后才恍然大悟的,但已经晚了,晚了。。。跪
好不容易做出来,结果栽在了int和double上,想shi的心都有了…………
但是,过了,也是很神奇了。。。

2)一面:
视频面试,面试官很……严肃,完全没有消除紧张,他面无表情,说话也没什么力,每次答完一个问题,回到都是“嗯……行(拖很长)”。
内心os:什么鬼!对不对你倒是说啊
1.介绍一下web项目
2.说一下css的box-size
3.Content-Type有哪些
4.application/x-www-form-urlencoded主要用来干什么的
4.说一下js的代理
5.代码实现一个代理,如on(elem, eventName, selector, callback) {}
6.反转链表相关的代码题:class Node {
constructor(value, next) {
this.value = value;
this.next = next;
}
}
function reverseList(head) {
// 请实现这个函数
}
7.遍历树的代码题:判断树中是否存在节点和为k的路径
延伸:不用必须到子节点,判断是否有和为k的路径
class Node {
constructor(value, left, right) {
this.value = value;
this.left = left;
this.right = right;
}
}
1
2 3
4 5 6
isSum(root, 8) => true 1 2 5
isSum(root, 11) => false
isSum(root, 3) => true 1-2

isSum(root, total) {

}
结果,毫无悬念,挂掉了。
我太紧张了,然后基础知识也不牢。
菜是原罪!

你可能感兴趣的:(2019字节跳动前端实习生笔试面试)