美团一面面经(Java)
1、 浏览器输入网址之后发生的变化?是长连接还是短链接,要服务器端还是客户端决定是长连接还是短连接(回答客户端,被说了,应该是服务器端)
2、 Cookie和session的关系,以及如果多台服务器上存的session不一样,怎么解决?
3、 为什么要多个服务器?(增加资源)
4、 编程题:有两个由字母组成的字符串 String a, b,实现函数,判断 a 中是否包含 b 中的所有字符,用了hashmap,你为什么会考虑用hashmap呢,我说还可以用hashset,他问hashmap和hashset之间的关系,hashset底层是用hashmap实现的。Hashmap的put方法的实现过程,为什么多线程put方***形成环路。问自己写的算法的时间复杂度。
5、 问了jvm虚拟机模型,oom可能出现的情况?
答:可能出现在堆中,也可能出现在栈中,我提到了stackoverflow,他继续问什么情况下会造成StackOverflow(递归)
6、 垃圾标记?引用计数、GCroot,问哪些可能成为GCroot的根,本地方法栈、虚拟机栈、堆、方法区。
7、 常见的排序算法,冒泡、选择、快排、堆排序。问分别的时间复杂度,本来想说快排说成了二分。。然后他又问,无序数组怎么才能二分查找,我说要先排序。
8、 CPU和内存的矛盾怎么解决?我说缓存,然后继续问缓存是怎么解决的(不会)
9、 进程和线程的区别?什么是上下文切换,什么是上下文?
10、 Java基础我忘了问的什么了(简历上写熟练掌握Java,就问了一些)
11、 介绍项目:20min
12、 最后聊了职业发展方向
#美团一面##美团##实习##面经##Java工程师#