2022阿里蚂蚁暑期实习一面面经
2022年3月8日晚上8点30-9点30(面试官真的辛苦,上完班呢么晚还要来面试我)
一、自我介绍
二、针对项目内容提问(聊了蛮久的,所以八股文问得比较少)
三、八股文
谈谈对Java并发编程的理解
谈谈对volatile关键字的理解和原理
谈谈synchronized关键字的理解和原理
谈谈HashMap这个数据结构,线程安全吗,为什么
谈谈ConcurrentHashMap,怎么保证线程安全的
四、算法题(发来一封邮件,点开链接coding,代码会实时显示在面试官那里)
1.一道滑动窗口的题,最长无重复子串,秒
2.我从链接里复制下来的
问题:实现一个多线程类,并用该线程类实例化3个线程A,B,C;A线程打印字符A,B线程打印字符B,C线程打印字符C;启动这3个线程,要求启动线程的顺序为C线程->B线程->A线程,并且最后输出内容为:
A
B
C
不能用sleep函数,注意考虑线程安全问题。编程语言不限
面试官说:自己也是从学生时代过来的,现在很多学生为了面试去刷算法,背八股文,我自己觉得八股文问太多也看不出实际能力,所以干脆来道场景题实战一下
我深知自己不可能完整地写出这道题,在思考了一会后说:用wait,notify或者join两个方案,讲了下思路,面试官认可我第一个方案,然后我就写了些伪代码
然后面试官说:其实我也不要求你能够写出这道题,就想看看你的思路,思路有了,coding能力以后在工作中自然会提升,然后他分享了他的想法
最后说他对我的面试表现挺满意的,当场告诉我过了,道谢之后结束面试。
这绝对是一次难忘的面试经历,体验感爆棚,面试官的谈吐和态度好到无法形容。
无论能否走到最后,我都很感谢这次面试经历。