当前位置:   article > 正文

在Github找的一份面试资料,在家看了一个暑假成功拿下字节跳动offer!_github面试资料

github面试资料

字节跳动面试:redis+MySQL事务+Linux+算法

一面

1、询问项目经历和细节;

2、任务系统怎么保证任务完成后发奖一定成功?

3、zset 延时队列怎么实现的?

4、redis 数据结构有哪些?分别怎么实现的?

5、redis 的持久化;

6、mysql 的索引;

7、一个无序数组找其子序列构成的和最大,要求子序列中的元素在原数组中两两都不相邻


二面

1、Redis 的 ZSET 怎么实现的? 尽量介绍的全一点,跳跃表加哈希表以及压缩链表

2、Redis 的 ZSET 做排行榜时,如果要实现分数相同时按时间顺序排序怎么实现? 说了一个将 score 拆成高 32 位和低 32 位,高 32 位存分数,低 32 位存时间的方法。问还有没有其他方法;

3、MySQL 事务的四个隔离级别? 先说了四个级别的区别,然后说了每个级别可能产生的问题

4、binlog 日志和 redolog 日志清楚吗? 说了两个日志的作用以及两阶段提交

5、C++ 的动态多态怎么实现的?

6、C++ 的构造函数可以是虚函数吗?

7、缺失的第一个正数;

8、linux 系统里,一个被打开的文件可以被另一个进程删除吗?

9、一个 10M 大小的 buffer 里存满了数据,现在要把这个 buffer 里的数据尽量发出去,可以允许部分丢包,问是用TCP好还是UDP好?为什么?

10、一个完整的 HTTP 请求会涉及到哪些协议?


三面

1、问项目

2、redis 的 ZSET 是怎么实现的?

3、让你设计一个限流的系统怎么做?

4、让你设计一个延时任务系统怎么做?说了两个方案,一个是使用 redis 的ZSET 来实现,考虑分片来抗高并发,使用 redis 的持久化来实现落地,使用 redis 的哨兵实现故障转移。 一个是使用时间轮的方法。

5、现有一个随机数生成器可以生成0到4的数,现在要让你用这个随机数生成器生成0到6的随机数,要保证生成的数概率均匀。

6、有 N 枚棋子,每个人一次可以拿1到 M 个,谁拿完后棋子的数量为0谁就获胜。现在有1000颗棋子,每次最多拿8个,A 先拿,那么 A 有必胜的拿法吗?第一个人拿完后剩余棋子的数量是8的倍数就必胜,否则就必输。

7、给出一棵二叉树的根节点,现在有这个二叉树的部分节点,要求这些节点最近的公共祖先。这道牛客题霸上有原题,大家可以去看看:NC102 在二叉树中找到两个节点的最近公共祖先

面试题答案,获取方式

 下文内容涉及到:面试题(含答案)+学习笔记+电子书籍+学习视频,点击此处  凭截图获 即可获取~

我从外包辞职了,10000小时后,走进字节跳动拿了offer

赠送我的刷题题库(1:BAT一线大厂面试真题)

我从外包辞职了,10000小时后,走进字节跳动拿了offer

  • Java架构成长笔记

我从外包辞职了,10000小时后,走进字节跳动拿了offer

  • Redis核心技术笔记(学习总结)

我从外包辞职了,10000小时后,走进字节跳动拿了offer

  • Spring全家桶学习笔记(SpringBoot+SpringMVC+SpringCloud+源码等)

我从外包辞职了,10000小时后,走进字节跳动拿了offer

  • 其它

我从外包辞职了,10000小时后,走进字节跳动拿了offer

3.学习方法

我个人的学习方法很简单,利用碎片时间进行系统性的学习。关于学习方法,我个人喜欢阅读书籍文档结合视频的方式,对于这些我自己个人也有一些整理。

  • 阅读书籍文档:

我从外包辞职了,10000小时后,走进字节跳动拿了offer

  • 看视频学习:

我从外包辞职了,10000小时后,走进字节跳动拿了offer

结尾:未来愿景及祝福

最后,希望未来的我发展顺利,早日拿下p7!同样,也祝愿你实现自己的人生理想,愿我们都越来越好,共勉!

友情分享:文章码字不容易,希望多多点赞+转发+评论支持一波。

需要文章中提到的面试题、笔记、电子书、学习视频,可以 点击此处  凭截图获 即可获取~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/282454
推荐阅读
相关标签
  

闽ICP备14008679号