字节跳动秋招一面 1hour
- 自我介绍
- 聊项目(快手实习做了哪些技术方案,桶限流怎么设计的,为什么都用mq肖峰了需要生产者限流)
- Java的面向对象
- main里面Futher s=new son(),调他们都有输出方法,问输出的是父的还是子的
- 这段代码在Java内存中的整个流程
- 这个s对象的从创建到销毁的过程,整个生命周期,分别会在哪些区域发生什么
- 什么时候会回收掉这个s
- 让你设计一个java运行时内存空间,怎么设计(没懂题目啊,我就自己设置我按照jvm来讲,他是很不满意打断我说你别管人家java怎么实现,说你自己想的)
- 怎么设计堆空间,要考虑到对象整个生命周期,现在已经给你划分好了一块内存,你怎么设计(还是把jvm的堆结构讲了一遍,伊甸园、幸存、老年的比例,各个区域应该用什么算法,为什么,什么时候gc,他是很不满意啊,直接换题了)(这里搞了好久,我一直没get面试官问题,应该凉凉,自己设计啊,但是我参考jvm还不行吗呜呜呜)
- 堆排序原理
- sql题:查每个班最高分的同学
- where name = 1 and class =2怎么建立索引
- 联合索引的话,只传class有序吗,为什么走不了,这个索引底层存储是怎么样的
- char和varchar有什么区别
- where class = 2,class单独建索引,数据库是varchar字符串,能走索引吗
(这后面就开始很顺利了,嗷嗷背)
- redis用过哪些数据结构
- string的底层原理
- redis的过期策略
- redis的内存淘汰策略
- java中的synchronized原理
- 写题:买卖股票II (这个题写过好多次,装不会,装了好久才开始默写,二面挂了旁敲侧击问出来代码要准备充分些,就是写太慢了应该,纯纯自己给自己挖坑)
----反问-----
- 有什么要提高的(java堆那边加强一下,中间提示了好多都没答到点子上,我现在都不知道他到底想问什么,怎么设计内存空间,我直接照着jvm说好像也没问题呀,他说你不要按照java的来,自己想一个。。。)
- 能过吗?(他说这个得看hr)
总结:这个一面感觉问的都是java基础、jvm、mysql、redis,偏语言和数据库方面考察,勉强过了吧,但是隔了好久才约二面,约的也很晚,感觉面评就很不好,而且我斯算法还斯这么慢
#24届软开秋招面试经验大赏#