字节后端实习一二面

感谢牛客网上很多同学提供的面经和经验,写一下自己的面经做一个回馈


一面:

1.       直接先讲讲ASCII, Unicode, utf-8的区别,真背过,真忘了,这是最难受的

2.       进程线程区别

3.       进程调度算法

4.       线程通信:后来我在网上查线程通信就是线程同步(信号,信号量,锁机制,条件变量),但面试时真不知道,转码选手真的是只背八股文的,没理解好。。。一懵逼讲成了进程通信(管道、共享内存,消息队列,信号,信号量,套接字),面试官中途打断说问的是线程,就直接说不知道了

5.       快表作用,逻辑地址物理地址转换

6.       虚拟内存

7.       计网:TCP四次挥手,主动说了2MSL

8.       有大量的time wait是为什么,蒙蔽了想成了大量的服务器的close wait,答了个:可能有bug(哈哈哈),服务器有过多数据依旧在发送。后来一想,啊应该回答等待时间可能大于2MSL的,导致大量客户端的TCP处于等待状态。

9.       数据库:事务特性

10.   原子性通过什么实现的(undo log,持久化呢(redo log

11.   了解数据库的集群吗?弱智的说我不知道,但我知道redis的集群(主从,哨兵,cluster),主从如何同步,当时不会,后来学了是通过binlog以及比较复杂的一些IO机制实现的

12.   算法:单词搜索(leetcode 79),秒了,结果dfs里面一个or写成and了,找了好久

13.   问答,总共50min

二面:

1.       Redis5种数据结构是啥:string, hash, list, set, ordered set

2.       String的特点,与C/C++有什么不同:二进制字符串,所以不能以\0结尾,需要规定长度

3.       讲讲hashhash functionmurmurHashing,解决哈希冲突:separate chaining。与你学到的其他语言的hash有什么不同:python dictionary hash: random hashing, 解决哈希冲突的方式是open address,因为源码里作者说separate chaining要维护的索引太多,不过缺点是扩容需求更大。

4.       讲讲跳跃表,跳跃表的指针层级是什么因素决定的(突然忘记那个公式了,按照理解胡编起来),跳跃表CRUD时指针的维护,讲到后面我自己绕进去了,面试官也绕进去了哈哈哈,就过了

5.       问了个啥,完全没听过,现在怎么也想不起来了,难受

6.       线程安全:不会,但感觉要是再说不会,我人就无了,主动说我猜线程安全可能与线程同步有关,我可以讲讲我对线程同步的了解吗?强行扭转话题

7.       在讲到线程锁后,既然讲到了锁,那你说说乐观锁和悲观锁吧

8.       我在OS里没有学到这两种,在SQL里学到了,所以话题来到了SQL,悲观锁讲了读写锁,乐观锁讲了一下基本概念,讲了一下自己的理解,顺便提到MVCC,讲了一下两者得相似点和区别(MVCC-写无锁,写-写有锁,乐观锁均不加锁,扯到了点时间戳/版本号的更新方式,糊弄过去了)。

9.       MVCC的概念,实现了哪种隔离级别:提交读和可重复读。为什么能实现这两种:脏读和不可重复读的本质是未提交,所以读写互斥。MVCC通过多版本快照防止读写互斥

10.   还知道MVCC哪些知识吗:undo log, 简单讲了快照读和当前读

11.   Undo log是在什么时候执行的:不知道,猜测undo log的本质是为了提交前的回滚,所以在commit之前undo log会记录数据,commit后就清除词条数据。面试官点了点头过了,但也不确定对不对

12.   计网:讲讲DNS,先将DNS的端口号,然后讲DNS的目的,然后回答输入url的经典问题

13.   算法题:面试官现场编写题目。给定任意数组(元素均为整数),输出所有满足A[0 ~ i) < A[i] < A[i + 1:]A[i],也就是说,如果元素大于它左边所有数,小于它右边所有的数,就把它appendresult list中将其输出。脑子完全是蒙的,面试官说要不换一题,他已经开始写第二题题目了,突然想到了接雨水(leetcode 42),从左到右遍历一次,再从右到左遍历一次。我记得另外分发糖果(leetcode 135)也是这个解法,然后秒了。

14.   问答

15.   面试总时间75min,感觉这算法题也算是标准hard了,八股能答得都答了,希望能有好结果


#字节跳动##面试题目#
全部评论
请问是什么部门?
点赞 回复 分享
发布于 2021-10-14 21:56
12面间隔多久
点赞 回复 分享
发布于 2021-10-19 00:22

相关推荐

点赞 评论 收藏
分享
11-05 07:29
贵州大学 Java
点赞 评论 收藏
分享
7 41 评论
分享
牛客网
牛客企业服务