昨天进行了美团的后端开发工程师的面试,不幸倒在了二面,现在把面试中问到的一些题目整理下,继续笔试面试去。


一面:

1、在纸上写代码(判断一个链表有没有环)

2、说出怎么找出循环链表的入口节点

3、在浏览器里输入美团网的URL,会经历哪些过程和设备。

4、HTTP的请求方式有哪几个?get和post之间的区别?

5、Linux中软链接和硬链接的区别?

6、DNS的请求过程

7、TCP/IP中的慢启动和快启动,为什么要用慢启动?

8、还是纸上写代码(斐波纳契数列)?递归实现存在哪个问题,如何进行优化?


二面:

1、Java垃圾回收机制?

2、垃圾回收器?

3、垃圾回收器中用到的算法?

4、HashMap的底层实现?HashSet的底层实现?

5、HashMap是不是现场安全的?对应的线程安全的是哪一个?怎样实现的线程安全?

6、多线程中的加锁机制?对象锁和静态锁之间的区别等?

7、Spring框架有没有研究过?

8、Mysql数据库中的查询优化?索引的底层数据结构?

9、继续写代码(两个集合的交集个数/两个集合的并集个数)?

10、HDFS中checkpoint根据什么来恢复文件?

11、dfs.replication多副本的实现机制?讲到了机架标识。

12、给一个200G的文件,怎么进行MapReduce处理。

13、shuffle的实现机制?为什么要有它?它的实现类是啥?

14、combiner的作用?是否一定要用到combiner?

15、map的输出为什么要放到本地Linux下?

16、Hive中内表、外表、分区表之间的区别?


暂时只能想起来这么多了。。。

第二面面到最后都七点多了,因此下错站,走了好多冤枉路,二面最后脑子都开始僵硬了,后面hadoop部分回答的不好,然后就悲剧了,屡败屡战,加油!

Logo

更多推荐