字节一面(抖音直播)

30min实习 + 10min八股 + 20min算法

自我介绍

实习拷打(产出+八股)
  1. sql相关:
  - 你参与了sql优化,可以讲讲具体是怎么优化的吗?有具体的流程吗?
  - explain执行计划重点关注字段?
  - 聚集索引和二级索引
  - mysql存储引擎(innodb),什么数据结构存储索引(B+树)
  - 为什么使用B+树而不用红黑树?
  - B+树增删改查的时间复杂度
  - 创建联合索引注意事项?索引失效场景?
  - 什么时候不符合最左前缀法则?
  - 最左前缀法则实现原理(ber会)
  - 事务隔离级别,隔离产生的问题
  - mvcc实现原理,mvcc如何实现不可重复读和幻读?
  - mysql/mvcc如何防止幻读?
  - 临键锁的实现原理,间隙锁的范围,开闭区间?

  2. ES相关:
  - 实习中提到了ES,具体干了什么
  - ILM策略
  - ES生命周期
  - 为什么进行Shrink操作
  - es中索引和文档的区别
  - es倒排索引机制

八股
- hashmap线程安全吗?哪些是线程安全的?
- hashmap不同版本的区别
- hash的底层数据结构
- hashmap为什么使用红黑树?树化条件?
- 为什么设置树化阈值为8?

算法:Leecode 403(hard) 青蛙过河
  动态规划+递归 
  给了几分钟先想思路,然后写关键代码,然后结合代码讲讲逻辑,没有跑代码
  
反问:
  1. 主要业务
  2. 建议
  3. 什么时候有结果(两个工作日)
全部评论
补充:原本es问完要问下一个项目的,我说有点忘了就换成 必吃榜——八股环节了
点赞 回复 分享
发布于 昨天 22:00 四川

相关推荐

昨天 22:16
已编辑
广州大学 Java
第一次面试,线下,不过感觉还好吧,也不紧张。20min笔试:1. exception和error的区别2. Thread.sleep(0)的意义以及其他相同作用的方案3. 列出熟悉的设计模式,解释一下并给出应用场景4. uuid转base64编码后是多少位,请给出计算过程(怎么还会有这种题)5. 项目中如何创建线程池,Exceutor的缺陷6. shutdown()的作用,是否会抛弃已提交未执行的任务7. 对spring IOC的理解8. beanFactory和applicationContext的区别9. 算法手撕,不是力扣上的题目,但还好算是比较简单的查找,我用了个嵌套二分,感觉不是最佳实现……现在只记得上面这些题,还有几题记不起来了我一开始没想到还会有笔试和算法,说是笔试通过后才会有面试……不过还好算是比较简单,但是uuid那题没写出来……面试:1. switch比对string的代码是什么样的,如果string是null该怎么办我说如果是null我会在switch之前进行if判断,因为switch不能用null会抛异常,hr说可以(不过我后来网上查了还是不行)2. 手撕sql:有user和phone两张表,需要查询phone表中有两条及以上记录的user平时mp用惯了没怎么写过sql了,写了个子查询hr说不是最佳方案3. 现在有abc三个任务,c需要在a和b完成后才能开始执行,请给出三个任务执行时间最短的方案a和b提交到线程池并行处理4. future的返回实体是什么我说是封装泛型的future,hr说是future的子类(?)5. 线程池中除了future和completefuture外,还有什么方法可以监控任务是否完成countDownLatch和cyclicBarrier6. 异步为什么要选择mq,直接开个线程不行吗我说mq有重试机制,而且可监控,整体稳定性和健壮性比较强7. 遇到解决不了的问题会干些什么我说上网查,问ai,hr说为什么不问同学(?)8. 如果有一个接口上线有bug,如何快速排查到接口内部存在问题的代码我说首先直接看看bug是什么,如果根据bug情况无法判定的话会进行debug打断点慢慢排查。但是hr好像是想让我回答git,说直接看当前版本与上个版本该接口的差异就好了9. 你了解过git的历史吗(?)🈚10. 如何实现每月签到我说redis的位图,hr说为啥要用redis,我说可以减轻数据库压力同时保障快速响应。hr说直接存本地缓存不就好了,我说每个用户都要维护一个位图,存本地不会oom么,hr没回答11. 不用redis如何实现每月签到我说那就只能存mysql里面了,加个限流,然后sql表里是userId和位图字符串12. 字符串和二进制的bit位差距我说只知道字符串比二进制要大……hr说不应该将位图用字符串的形式存储,占用空间太大,应该用int然后就是关于项目的问题以及反问了最后直接给了oc,但是我打算等年后再实习就说考虑一下了。第一次面试,整体体验跟想象中的差距还是蛮大的,不过hr其实人挺好的,感觉像老前辈,说让我思维保持灵活,不要老看网课要去多读一下电子书。然后说我们做程序员的,要多去思考当前技术栈解决不了的问题,而不是总想着利用现有的技术栈去解决问题。最后还劝我可以不着急现在找实习,现在机会少,可以等3月的实习,说我的简历可以多投一下中大厂,真是老前辈了不过准备了很久的jvm、计网os以及其他的倒是完全没问到
查看21道真题和解析
点赞 评论 收藏
分享
评论
2
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务