字节一面
vue的nextTick的实现原理
图片懒加载的实现
编程题:实现trim
编程题:实现promiseAll
看输出:
async function async1() { console.log('async1 start'); await async2(); console.log('async1 end'); } async function async2() { console.log('async2'); } console.log('script start'); setTimeout(function() { console.log('setTimeout'); }, 0); async1(); new Promise(function(resolve) { console.log('promise1'); resolve(); }).then(function() { console.log('promise2'); }); console.log('script end');编程题:寻找岛屿
给一个0 1矩阵,求不同的岛屿的个数。
0代表海,1代表岛,如果两个1相邻,那么这两个1属于同一个岛。我们只考虑上下左右为相邻。
一面总结:面试官问的题目都比较基础,我能记到的就是上面这些,没记得是比较基础得题目,多看面经能解决,字节真的会比较看重编码能力,但其实考察得题目都不是很难,而且面试官都会引导,不要紧张,保持好的心态就没问题字节二面
边界合并和边界溢出编程题:实现一个拼手气分红包的方法,传入总金额及人数,返回每个人分得的金额数组(单位为分)
-
每个人至少要有1分钱
-
总金额不能超过或不到
智力题:64匹马,8个赛道
每场比赛只知道名次,不知道具体的时间
用最少的场次,得到跑得最快的4匹马
二面总结:二面面试官很耐心,会引导,然后带着我一步步解决问题,总之还是自己不要紧张,一紧张就会大脑空白只要不紧张跟着面试官得思路总能解决的。
字节三面
ps:可能因为我说过想往全栈方向发展,所以面试官问我后端的比较多 什么是线程安全,有没有多线程编程过
写sql(用到group by)大致就是找出部门中工资最高的员工
编程题:给定m个不同字符 [a, b, c, d],以及长度为n的字符串tbcacbdata,在其中找到一个长度为m的连续子串,使得这个子串刚好由这m个字符组成,顺序无所谓,返回任意满足条件的一个子串的起始位置,未找到返回-1。比如上面这个例子,acbd,3
编程题:从起点开始接下来有 100 个方块,相邻方块间的距离都为 1,每个方块上有增加体力的食用蘑菇或减少体力的毒蘑菇,蘑菇带来的体力改变是已知的。一个人初始体力为 m,每次可以往前跳任意个方块,体力耗尽就会死掉。每跳一次消耗的体力与跳的距离成正比,比例为 1。问这个人能否跳到终点,如果能,求可能剩余的最大体力。
怎样保证tcp传输的可靠性,以及拥塞控制的过程
数据库中的索引,用b+树做索引有什么好处
进程的调度方式
三面总结:在介绍的时候一定要说自己擅长的,引导面试官,对编程题的描述不确定的要反复的像面试官确认题目的意思。
全部评论
(0) 回帖