字节跳动教育后台
1面:
线程池是什么,讲讲里面具体的参数,线程池分什么种类,如何自己实现一个线程池
redis为什么快
输入url发生了什么
Mysql查询一条数据的时候发生了什么
-8的二进制表示,用补码表示有什么好处
sql:cs表,class_id,stu_id两个字端,选出选课人数最多的前10个班级
SpringBoot集成了tomcat,二者具体是怎么相互通信的(不会)
Spring请求分发流程
算法:LRU缓存的实现,要求put/get均为O(1)复杂度
2面(挂 感觉跟面试官合不来,而且确实有些基础问题答错了):
链表和数组的区别
链表实现一个队列(对代码质量要求非常高,回答的不好,楼主以为是个纯数据结构题没注意封装),二叉树求高度(两种方法,递归/非递归),时间复杂度和空间复杂度分析(空间复杂度本来答对了然后面试官一质疑又改错了)
数据库事务 acid,解释
http协议 get/post 区别
你刚才说get把参数放url里,是http协议这么规定的吗?(答错了,不是这么规定的)
post里面传的都是表单吗?
http协议怎么区分post方法里面传的啥
Osi 7层模型
cookie和session区别
Tcp ip http在哪几层,分别什么作用
笔试(0 ac 不会输入输出干瞪眼):
1.floyd算法求有向图最短路
2.没来得及细看,感觉是并查集
1面:
voltaile关键字
你知道什么设计模式
你怎么用的工厂模式
讲讲单例模式
Tcp怎么建立连接的
如何判断一棵树是否为另一棵树的子结构
怎么实现分布式锁
如何不借助redis之类的中间件实现分布式锁(不会)
你还知道除了哪些GET POST方法以外的restful风格的方法
讲两个项目
公司的项目里你怎么知道你这个算法要优化到什么程度为止
你的个人项目中图片是怎么存的,获取流程大概是什么
反问:1.有啥要提高的 2.公司在哪 3.北京有没有位置
答:1.tcp连接建立只答出了三次握手相关的内容,不够详细,不过以校招标准的话可以了,建议深入一下,别的都挺好的 2.杭州 3.应该有吧
2面:
监督学习和无监督学习的区别
K-means以什么作为损失
知道什么排序
说说归并排序
dfs和bfs是啥,有啥应用场景
字典树是啥,应用场景和好处是啥
求图的最短路有啥算法
狄杰斯特拉算法时间复杂度,执行流程
讲讲你理解的动态规划
口述最长公共子序列和最长公共子串的状态转移方程
反问:1.有啥要提高的 2.你们部门技术栈是啥 3.用了什么相关领域内业界最领先的技术
答:1.我觉得挺好的 2.Java和sql 3.说实话确实没啥太领先的技术,主要还是写出易读易扩展易维护的高质量代码,你要是真有天赋的话可以推荐你去做算法
3面:
详细讲在公司的项目
你的项目有什么最终成果
奖学金和论文
输入url按回车后的全过程
浏览器怎么把东西渲染出来的
数据库索引的数据结构
使用B+树的好处
AB两个文件,分别存有60亿条url,每条64B,给一台4G内存的机器,求两个文件的交集
除了哈希成小文件外有没有更好的方法
你刚才说了布隆过滤器,他有啥缺点
redis单线程怎么处理多个任务的,为啥快
线程同步的方法
你的亮点是啥
你还投了哪些厂
如果都给你offer你去哪
100层楼两个小球,最少试多少次能试出来小球会在哪层楼碎掉
你笔试成绩为什么这么差(第一次做笔试,不会输入输出)
反问:1.有啥要提高的 2.你们招实习生看重啥 3.表现如何 4.能不能给个机会来阿里实习
答 1.Java相关的项目经验不足 2.看综合素质 3.有挺好的地方也有不足的地方 4.可以,但你得补一轮笔试。
补笔试:1.最大子数组 2.求数组中第一个比给定target大的值(均要求最优解,楼主拉了胯了,一开始第一题套了前缀和模版没用贪心,第二题也二分的不好,最后被面试官怼了以后才改对的,感觉对面不太高兴)
Hr面:
你最自豪的三件事
你最遗憾的一件事
你为啥想加入阿里巴巴
你对未来有啥规划
你除了学习之外的大学生活是啥样的
你的优点和缺点是啥
美团 基础研发平台大数据(offer)
笔试:比较简单,唯一印象深刻的是一个切地球蛋糕的,没读懂题
1面:
问两个项目
Osi7层模型
传输层的有哪些协议
Udp一定不可靠吗
怎么让udp可靠,这么做好处在哪
基于udp的上层协议有啥
详细讲虚拟内存
一个内存页设计成多大的是最优的(没答上来,个人感觉这个问题就很奇怪,本人认为这需要在页表大小对内存的消耗、内部碎片带来的内存浪费以及内存管理系统性能之间进行取舍、不太懂他这个最优是什么意思)
详细讲缺页的时候cpu会做啥
volatile关键字
线程安全的集合框架
加了volatile后多线程同时操作一个变量安全吗
怎么让这个操作安全,除了加锁有别的做法吗
Hashmap线程安不安全,为啥不安全
Jvm内存区域
OOM发生在哪
除了堆别的地方可能发生吗(其实是可能,我说我只知道堆上会OOM)
Java内存泄漏的多种情况(答出来一种古***DK中String内存泄漏的情况,估计他想让我答threadlocal引起内存泄漏那一套,可惜我记不太清了。。)
算法:
1.简单dp,但要求对dp数组压缩(滚动数组优化),要求最优时间和空间复杂度
2.字符串转数字,不允许用库函数,要考虑各种情况(比如输入不合法、溢出等)
反问:1.你们技术栈是啥 2.你们用了啥业界最先进的技术 3.公司在哪
1.spark之类的大数据技术以及java和python一套的web相关的技术栈
2.说了一个,但是我不太懂,应该是没有特别前沿的技术(对面也承认了,跟我感兴趣的编译优化领域相比,难度上没有可比性)
3.北京望京
2面:
做题:打印一个字符数组中出现频率的前k个,如果有频率相同的按字典序排序
一个文件太大了,机器放不下怎么进行处理
文件哈希以后,哈希后的小文件仍然放不下,怎么处理
进程线程协程是什么,为什么要引入线程和协程
Java垃圾回收器和垃圾回收算法
什么代分别用什么垃圾回收算法,为什么用这个算法
双亲委派机制,为什么要引入这个机制
讲你最自豪的一个项目
基于项目问了很多开放问题(指考虑兼容性、产品市场之类的)
反问:1.技术栈 2.最快什么时候offer 3. 有啥要提高的
1.语言方面是Java和python,技术栈的话大数据这一块基本都用了,包括分布式之类的
2.本周内就能有,你是有别的offer了吗
3.基础可以,但是开放性问题有些不足,不能一味追求技术,要从多方面进行考虑。
全部评论
(3) 回帖