美团java后端一二面面经
美团一面
时间:8.17 14:55 - 16:13
面试官人很好,不懂的地方还给你讲,也会扩展一些东西
-
介绍项目
-
网络
-
tcp和udp是哪一层的协议
-
tcp三次握手
-
如果第一次失败会发生什么?客户端和服务端是什么状态?
-
三次握手少一次可以吗?为什么?有什么危害?
-
为什么不能四次?
-
tcp是如何进行拥塞控制的
-
七层协议展开讲讲
-
tcp的报文格式是什么
-
-
redis
-
redis的基本数据结构有哪些?
-
zest的实现方式是什么?
-
介绍一下跳表?
-
跳表节点晋升机制?
-
随机算法是怎么实现的?
-
-
死锁是怎么产生的?四个必要条件?锁升级的过程?锁对应linux的是什么机制?讲一下volatile?进程间通信方式?线程间通信方式?
-
JVM
-
内存模型有哪些?
-
垃圾回收算法有哪些?
-
G1用的是什么算法
-
(跟面试官说JVM最近实习没怎么看忘完了,面试官笑着说没事)
-
-
数据库
-
索引的分类、底层实现
-
什么是B树、B+树、红黑树,为什么用B+树
-
联合索引是什么?
-
如果建立ABC索引,只对AC做等值查询会走索引吗?会走哪些索引?
-
面试官说都会走,让我看看最新的mysql的英文文档。
-
-
场景题:
-
一个四亿量级的白名单,如何判断用户是否在这白名单中?
-
我说先hash成小文件,然后每个文件用布隆过滤器?
-
讲讲布隆过滤器是怎么实现的?
-
是否能够精确的判断,布隆过滤器后面有什么优化。
-
两个2g的砝码,两个7g的砝码,如何把一堆沙子分成一堆40g的和一堆100g的,说了两种思路,用四次天平和三次天平的,面试官问能不能只用两次天平。
-
-
算法
-
爬楼梯
-
判断链表是否有环找出入环节点。
-
美团一面问的很细,基础好多凭着记忆回答的,听录音惨不忍睹,算是给自己提了个醒。
美团二面
时间:8.20 19:25 - 20:23
面试官人很好,全程笑容认真倾听不打断
-
介绍项目
-
int占多少字节,数据范围,为什么
-
泛型是如何使用的、好处是什么
-
Java语言引入泛型的好处是安全简单,消除强制类型转换。. 泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率。
-
-
创建线程的方式、线程池的优点。
-
http协议、协议格式、方法、get和post的区别
-
讲一讲完全二叉树和满二叉树。
-
完全二叉树的节点数是任意的,从形式上讲它是个缺失的的三角形,但所缺失的部分一定是右下角某个连续的部 分,最后那一行可能不是完整的,对于k层的完全二叉树,节点数的范围2^ (k - 1) -1 < N< 2^k - 1;
-
-
口述如何找出一个数组中的众数
-
摩尔投票法
-
如果不一定存在众数摩尔投票的结果
-
hashmap存key-value
-
快排的思想找到后再统计是否过半
-
-
口述如何用两个栈实现链表
-
口述一段绳子能烧一小时如何确定十五分钟
-
算法要求十分钟:二叉树中和为某个一值的路径。