美团线下3面+hr面

顺便许愿意向书。
在武汉霸面的,到了之后交了简历,说要看面试官还有没有时间,先去休息区等候,结果等了一会儿就开始面试了。。

一面:
上来20min让我写道题:
把栈里的数降序排序,额外空间只能再用一个栈。。
例如栈中的数为:
2,4,5,1,3
输出:
5,4,3,2,1
讲一下hashmap。说了下如何算hash,如何比较,如何插入,hashCode和equals等等,再说了1.7和1.8的区别
头插***有什么问题?扩容时候线程安全balabala
如何扩容重hash的?扩容2倍然后分别再算hash啥的,其实有点慌了
你刚刚说的1.7的,1.8是怎么样的,或者有没有更快的方法? 记不清楚了扯了点高八位还是第八位的。。。
那线程安全的哈希表有啥? hashTable和currentHashMap。
hashTable怎么保证线程安全? 加锁。 什么锁? synchronize
那currentHashMap呢? 1.7分段锁,1.8原子变量+CAS
CAS有什么问题吗? ABA 还有呢? 不知道。。。
还有那些保证线程安全的东西?
volatile,ReentrantLock ,Condition,信号量。
volatile怎么保证线程安全?保证可见性 还有呢? 内存屏障 什么是内存屏障? 指令重排序balabala 那他怎么保证可见性?工作内存、主内存啥的 那能保证线程安全吗? 不能,不满足原子性
Condition有什么作用? 可以唤醒指定线程,notify和notifyAll只能唤醒随机线程和所有线程
ReentrantLock 和synchronize的区别是啥?synchronize是JVM层面的,编译之后加monitorenter和monitorexit之类,ReentrantLock是基于AQS,然后就是可重入不可重入,公平非公平。。加代码块、加方法显示释放bababa
GC说一下。。 有哪几个带? 新生老年。 还有呢?   永代区(记得是在方法区放常量)??。新生代算法 什么时候变老年? 15还是16次都没被清除(记不太清了)。 还有呢? 太大了放不下   还有呢?   不知道了。。。。。什么时候进永代? 不会进吧。。。  知道哪些垃圾收集器?CMS G1 ZGC。 CMS的处理过程?balabala 几个阶段?4个 不能和用户线程并发的哪几个? 1和3 G1和CMS有什么区别? 分块优先级回收,memorySet balabala。CMS和G1优缺点? CMS响应快,G1效率高(乱说的) CMS标记清除有内存碎块,易产生full GC。
Mysql的索引结构,画一下。 为什么用B+树,有什么优点?随机读、顺序读、范围查找
redis的过期规则?  定时抽几个检查,过期删除,用到的时候检查,过期删除,内存耗太多扫描删除
redis的内存置换方法? (不太明白为什么redis会有内存置换。。。)试着说了一下lru   LRU也有好多种的吧?   不清楚。。。
redis zset的数据结构。 跳表    长什么样?画一下    为什么用跳表?   效率快,简单一些。  时间复杂度多少?   和二分查找差不多吧(随便猜的。。)  如何插入一个节点?  redis用了一个层数组,随机一下生成数组高度,然后。。。。就打断了我。
redis可以持久化吗? 可以, rbd aof  有什么优缺点? balabala
如果让你设计一个限流器,可以用什么算法?   令牌桶,信号量。 两者有什么区别?  说了下各自是啥意思?区别支支吾吾说不出。。。。   还有其他的吗? 滑动窗口?(试探的口气)   解释下滑动窗口     用map,时间为key   (打断)map?     TreeMap,获取当前时间比较一下然后trim掉过期的。。。
然后让我去找hr。。。

二面:
5min说一个你的项目,架构和技术点都可以说 balabala  然后扣了下细节。。
你觉得性能瓶颈在哪?有没有改进方法?  balabala,改进方法暂时没想到。。。
mysql的事务隔离级别  balabala 已提交读和可重复读的区别,举个例子? 讲了好久。。。
读过什么的源码? balabala  2min给我说一下原理。  balabala
工程类问题,时间关系不用写了,让我说思路(幸好不用写。。)12345转变为一万两千三百四十五元整。  balabal    大致思路没问题,只是还有些细节点,例如12000 100200这些边界条件等等。。
然后带着我去找三面面试官了

三面:
问题很宽泛。。
数据库连接池的作用是啥?   复用。balabala
final 关键字的作用 balabala
Get请求里有哪些东西? get url 版本 encoding host cookie等。。。    url里面的?&%啥意思? balabala(%分号没说出来)
其他的问题忘了。。。。
最后写一个算法题:
单链表奇偶节点互换。。。(脑子有点懵。逆置的函数没想起来怎么写、、、)分出偶数节点做一个单链表,然后奇数节点再顺序插入。。好歹是写完了
你有什么想问的? 然后去后面找hr

hr面:
常规问题。。。
只是有个点,问我想去哪工作,直说平台优先级最高,平台差不多的话南方优先级高于北方(美团在北京。。。)。。。不知道会不会因为这个挂我。。算了,说都说了,反正也是实话。。。

最后许愿求offer~

意向书已get,特来还愿~

#美团##面经##Java工程师##校招#
全部评论
一面问了这么多
点赞 回复 分享
发布于 2019-09-23 14:59
加面了啊 老哥
点赞 回复 分享
发布于 2019-09-20 12:07
求问美团有广深的宣讲咩……
点赞 回复 分享
发布于 2019-09-19 21:40
强啊大哥
点赞 回复 分享
发布于 2019-09-19 21:34

相关推荐

06-13 17:33
门头沟学院 Java
顺序不记了,大致顺序是这样的,有的相同知识点写分开了1.基本数据类型2.基本数据类型和包装类型的区别3.==和equals区别4.ArrayList与LinkedList区别5.hashmap底层原理,put操作时会发生什么6.说出几种树型数据结构7.B树和B+树区别8.jvm加载类机制9.线程池核心参数10.创建线程池的几种方式11.callable与runnable区别12.线程池怎么回收线程13.redis三剑客14.布隆过滤器原理,不要背八股,说说真正使用时遇到了问题没有(我说没有,不知道该怎么回答了)15.堆的内存结构16.自己在写项目时有没有遇见过oom,如何处理,不要背八股,根据真实经验,我说不会17.redis死锁怎么办,watchdog机制如何发现是否锁过期18.如何避免redis红锁19.一个表性别与年龄如何加索引20.自己的项目的QPS怎么测的,有没有真正遇到大数量表21.说一说泛型22.springboot自动装配原理23.springmvc与springboot区别24.aop使用过嘛?动态代理与静态代理区别25.spring循环依赖怎么解决26.你说用过es,es如何分片,怎么存的数据,1000万条数据怎么写入库中27.你说用limit,那么在数据量大之后,如何优化28.rabbitmq如何批次发送,批量读取,答了延迟队列和线程池,都不对29.计网知不知道smtp协议,不知道写了对不对,完全听懵了30.springcloud知道嘛?只是了解反问1.做什么的?短信服务,信息量能到千万级2.对我的建议,基础不错,但是不要只背八股,多去实际开发中理解。面试官人不错,虽然没露脸,但是中间会引导我回答问题,不会的也只是说对我要求没那么高。面完问我在济宁生活有没有困难,最快什么时候到,让人事给我聊薪资了。下午人事打电话,问我27届的会不会跑路,还在想办法如何使我不跑路,不想扣我薪资等。之后我再联系吧,还挺想去的😭,我真不跑路哥😢附一张河科大幽默大专图,科大就是大专罢了
查看30道真题和解析
点赞 评论 收藏
分享
评论
1
30
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务