字节上海日常实习二面面经

许愿一个三面通过
首先介绍上家实习的时候两个项目方案
1. 缓存的一致性怎么保证,怎么保证数据不在短时间内集体过期
2. 消息队列该建立在哪里,怎么去重?这里说的不太好,后来想想确实应该是说redis从内存中查找,回忆起来确实有redis的库,我mentor让我写一篇km来着,但后来线上办公这事儿就搁置下来了,寄
3. 线程进程区别
4. 三次握手和四次挥手,为什么要有time_wait这个状态?
5. 描述一下红黑树,和二叉查找树有什么区别?(简述了一下那几个插入规则,并且比对了一下avl,简单说了一下平衡规则和依稀记得的那几条规则)
6. 操作系统的用户态和内核态,为什么要有用户态和内核态
7. sql,问如果让你实现join会怎么去实现,要求复杂度最低
这我真不知道,只是想了下说先过滤形成一个快照,对using子段进行排序,然后两个指针尺取O(n + m),后来说有没有更快的,我就说数据库磁盘数据结构有内存块,可以先分成小文件然后多路查找归并加速,并且同时进行比对筛选,他说OK差不多了。然后事后我回去看了下,确实和我说的差不多,但是可能漏了一点就是可以hash查找,潜意识里觉得hash对海量数据太大了,然后就没想到
8. 一些常规八股
然后做题,原地算法找未出现的第一个正整数
我之前搞mex大部分都是set和multiset暴力搞,真没拿原地做过,然后当时觉得完蛋了,现在算法水平已经在谷底了,大概率寄
不过很快定了定神,自己手撸了几组样例然后仔细想了下,发现只有两种情况,要么换到原来的位置上,要么呆在别的位置上的就是重复的或者不在范围内的,有点思路了,然后就用while类似于并查集那样一直换到换不出来的搞出来了,自己测了几个没问题,样例也过了,面试官说ok。真给我吓坏了,麻了。
然后问我什么时候能来,到什么时候
反问:
咱们组是干什么的,感觉类似于一个后台 偏中台的组,主要语言golang
自己的不足大概是对项目掌握不够,而且一说起来时间长就容易不自信,然后垮掉,之后得多练练表达这方面
#暑期实习##字节跳动##面试题目#
全部评论
祝你好运!我也在等待字节上海,虽然我是别的岗位hh 希望我们都能进厂!
点赞 回复 分享
发布于 2022-03-02 16:38
这个join是怎么实现的 可太秀了
点赞 回复 分享
发布于 2022-03-02 17:12

相关推荐

3 15 评论
分享
牛客网
牛客企业服务