Java开发面经,今日头条、百度、腾讯、快手、借贷宝、阿里云

写在开头

3.12-4.12,历时一个月,终于收到阿里云Java研发实习的录用意向书,可以说这是本次春招真正意义上的第一个offer,大概也会是最后一个offer了吧,本人渣渣211本科菜鸡一枚,能够收到阿里的录用意向书纯属侥幸,为感谢广大牛油的贡献,特放出我在本次春招面试各公司的辛酸经历,供各位有需要的牛油参考。(因为时间比较久了,我很多都不记得了,放出来的只是我记得的部分,不是全部)

2.14(情人节,然而和我这个单身22年的Single Dog没什么关系)今日头条后台开发一面(深圳岗位,处女面,挂)

1、进程通信方式,共享内存原理
2、TCP拥塞控制原理
3、TCP可靠数据传输原理
4、TCP与UDP的区别,各自的应用情景
5、数据库聚簇索引与非聚簇索引原理
6、C Map实现原理,查找时间复杂度
7、Java HashMap实现原理,查找时间复杂度
8、HashMap多线程插入是否线程安全(各自Key不相同),为什么
9、快排时间复杂度是O(nlogn)的原因,最坏时间复杂度是什么,原因,如果优化
10、进程与线程的区别
11、进程内存区域划分(数据区、代码区......),哪些是线程共享,哪些是线程独占
12、物理地址与逻辑地址的概念,换算关系
13、select/epoll原理
代码题:
1、3×7表格,从左上到右下,每次只能向右或向下,总共路径有多少条(leetcode原题),我用了深度遍历递归实现,然后问时间复杂度是多少,怎么优化
2、实现一种排序算法
以上问题不是提问顺序。

百度Java研发一面(日常实习岗,挂)

1、简历项目相关问题(15min)
2、TCP拥塞控制原理(基础知识 5-10 min)
3、TCP可靠数据传输原理
4、volatile和synchronized的区别
...(不记得还有什么问题了)
开放性问题:(15min)
我所在的区大概有多少条公路?大概有多少个加油站?怎么分布?为什么?
代码题:(20min)
快排实现,写好发邮箱

借贷宝一面(口头offer,已拒)

1、都知道什么排序算法,讲一下堆排序,应用场景,讲一下快速排序
2、HashMap原理,红黑树讲一下(自己挖的坑)
3、concurrenthashmap原理
4、ThreadLocal应用场景,原理
5、String等号比较
6、innodb索引原理
7、红黑树与平衡树的区别,各自的应用场景
8、两个大文件里面有很多字符串,找出交集

腾讯暑期实习后台开发一面(挂)

1、Java是值传递还是引用传递,为什么
2、new一个对象的过程
3、JVM内存区域划分,各自的作用
4、堆空间的划分,为什么这样分
5、垃圾收集算法
6、concurrenthashmap原理
7、TCP三次握手,为什么需要三次握手
8、TCP拥塞控制原理
9、滑动窗口原理
10、TCP网络攻击
11、TIME_WAIT什么情况下会出现,为什么
12、http状态码
13、post和get的区别
14、网络攻击是否有了解?sql注入原理,如何防止(自己挖的坑)
15、SpringMVC和Servlet的区别
16、地址空间的作用
17、进程通信方式,各自应用场景
18、进程与线程的区别
19、MySQL索引原理,慢查询优化,如何合理建索引
20、两个栈实现一个队列(剑指offer原题)
21、两数之和(剑指offer原题)
22、青蛙跳台阶问题(剑指offer原题)

快手一面(挂)

1、java基础,很多,也很常规,所以不太记得了
2、JVM内存模型,垃圾回收算法
3、线程池参数及作用
4、有一个线程占用CPU很高,如何查出来,如何打印堆栈信息
5、如何打印一个线程的内存占用信息
6、JVM工具及用法
7、一百亿个数排序?(反正就是很多个数排序,多少不记得了)
8、k个有序链表排序成一个有链数列,代码实现,不用跑得通,讲思路
9、concurrenthashmap原理
10、ICMP处于哪一层
11、TCP三次握手
12、TCP四次挥手
13、页式和段式内存管理
14、volatile关键字讲一讲
15、TCP关闭的closing状态

蘑菇街一、二面(等消息)

(4.16更新,已挂)
蘑菇街面试基本不问基础知识,就是从你的简历中的项目提问,比如我简历上写了一个web项目,里面有权限管理,然后问怎么实现,然后项目遇到的挑战什么的。蘑菇街一面给我的体验是最好的,就问了几个基础知识,然后问项目,然后给你提出改进的思路,而且是慢慢的引导你往改进的思路去想,然后就是场景题,如果你给的方案不够好的话也会慢慢引导你去优化。

--------------------------------------------------------分割线-----------------------------------------------------

阿里云一面

1、简历项目相关(10-15 min)
2、传输层与网络层的区别
3、ping使用的协议,处于哪一层
4、TCP三次握手
5、TCP四次挥手
6、last_ack阶段
7、java函数值传递还是引用传递,为什么
8、JVM内存模型
9、full gc时机
...线程相关问题,都是结合场景来提问,我不知道怎么描述
10、java互斥锁(synchronized和lock的区别)
代码题:
不是算法题目,是一道多线程的题目,两个猴子,n个苹果,一个一次拿两个,一个一次拿三个,直到苹果不够两个人中的任何一个拿的时候就停止,后面要解释一下结果,然后改进,不要让其中一个猴子连续拿很多次

阿里云二面(不知道算不算二面,面试官说聊一下,我问是不是二面,面试官说算是吧)

1、简历项目,比赛相关
2、浏览器输入URL之后到内容返回的整个过程
3、Linux命令(find命令)
4、TCP三次握手
5、TCP传输过程中出现丢包怎么处理
......
感觉还是比赛和项目相关聊的时间比较长,基础没怎么问

阿里云三面

1、实现一个后端的异步服务框架(实现思路)
2、GC机制
3、内存泄漏举例
4、乐观锁与悲观锁
5、简历项目相关的问题
6、专业相关的问题(我是网络工程专业)
7、设计一个服务,提供一个接口,为请求这个接口的用户返回一个B类IP地址,响应越快越好(即支持多并发访问),设计方案
......
感觉这一面主要聊一些场景的方案设计的时间比较长

四面(交叉面)

1、简历项目相关
2、TCP拥塞控制原理
3、有了解过Linux kernel里面常用算法
4、专业相关的问题(我是网络工程专业)
5、迪杰斯特拉最短路径算法
6、矩阵连乘问题(动态规划中的矩阵连乘问题)
7、ThreadLocal使用场景,原理
8、ConcurrentHashMap原理
......
这一面面得极差,面得我都要哭了,因为等这一面我等了一周,而且是晚上十点多才等到的电话,那时候心情特别低落,所以很多问题答的一塌糊涂

hr面

常规问题,就面了十来分钟#阿里巴巴##腾讯##百度##快手##实习##Java工程师#
全部评论
实习?
点赞 回复
分享
发布于 2019-04-14 16:14
大佬们总说自己是渣渣,然而 offer拿到手软😂😂
点赞 回复
分享
发布于 2019-04-14 21:34
百信银行
校招火热招聘中
官网直投
楼主最后拿到阿里的offer了吗
点赞 回复
分享
发布于 2019-04-14 19:43
恭喜恭喜
点赞 回复
分享
发布于 2019-04-15 09:13
0offer渣渣过来蹭一蹭😂
点赞 回复
分享
发布于 2019-04-15 15:19
恭喜恭喜
点赞 回复
分享
发布于 2019-04-15 16:36
你项目和比赛做的是什么呢
点赞 回复
分享
发布于 2019-04-16 13:04
楼主是大三下还是大四下啊
点赞 回复
分享
发布于 2019-11-30 20:28

相关推荐

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