字节跳动 抖音直播后端开发实习生 二面凉经
1、自我介绍
2、实习中写的校验链的架构是怎么样的,有哪几部分模块?
3、lua脚本怎么保证原子性的?
4、数据库慢查询是怎么排查的?怎么优化?
5、分库分表有哪些方法?后续需要添加一个查询条件怎么添加?
6、堆和栈有什么区别?为什么要有栈,不可以直接在堆上面分配内存吗?
7、tcp为什么要是4次挥手?可以简化为3次吗?一直3次挥手会有什么问题?
8、codin题,[IP分割](93. 复原 IP 地址 - 力扣(LeetCode))
1、自我介绍
2、实习中写的校验链的架构是怎么样的,有哪几部分模块?
3、lua脚本怎么保证原子性的?
4、数据库慢查询是怎么排查的?怎么优化?
5、分库分表有哪些方法?后续需要添加一个查询条件怎么添加?
6、堆和栈有什么区别?为什么要有栈,不可以直接在堆上面分配内存吗?
7、tcp为什么要是4次挥手?可以简化为3次吗?一直3次挥手会有什么问题?
8、codin题,[IP分割](93. 复原 IP 地址 - 力扣(LeetCode))
相关推荐
小浪_Coding:你问别人,本来就是有求于人,别人肯定没有义务免费回答你丫, 有点流量每天私信可能都十几,几十条的,大家都有工作和自己的事情, 付费也是正常的, 就像你请别人搭把手, 总得给人家买瓶水喝吧
球球与墩墩:这不是前端常考的对象扁平化吗,面试官像是前端出来的
const flattern = (obj) => {
const res = {};
const dfs = (curr, path) => {
if(typeof curr === 'object' && curr !== null) {
const isArray = Array.isArray(curr);
for(let key in curr) {
const newPath = path ? isArray ? `${path}[${key}]` : `${path}.${key}` : key;
dfs(curr[key], newPath);
}
} else {
res[path] = curr
}
}
dfs(obj);
return res;
}
查看3道真题和解析