阿里Java研发工程师实习面经
十分幸运 拿到阿里云的offer,感谢周围无数人对我的支持和鼓励,所以写篇面经希望可以帮助大家。
面试中,运气占很大一部分的,所以你们若是没有通过,一定不要气馁,继续加油。
每个努力的人 都值得钦佩,无论结果如何。
我说点面试中的小技巧,可以帮助你更好发挥,(注意,这个方法比较适合我,不一定适合你哇)
完全可以将学到的知识讲给自己(或者讲给别人),若是自己(别人)听你的讲述 能够听懂(使用自己的话去讲,而不要有专业术语),那么说明 你已经学好了。其原理就是 费曼学习法。感兴趣的人可以去了解下。
我个人习惯于 将一个知识点 分解为 xxx是什么,xxx有什么用,如何实现这个功能的(核心的工作流程),缺点是什么(以及为什么有这个缺点,缺点如何补救)。
举个例子, CMS垃圾回收器回收时为什么有内存碎片 , 首先分解为CMS是什么,内存碎片是什么?CMS垃圾回收器有什么用和Serial ParNew Parallel 等比较,优势,CMS是如何工作的,来实现尽可能降低响应时间的,为什么CMS有这个缺点,它是如何取舍的,如何补救这个缺点。
这些子问题都回答好,那么基本上这个问题就学的可以了。
这样可以检测你是否学好,而且,若是你都没法条理清晰地讲给自己,那怎么条理清晰地讲给面试官呢?
接下来就写下三次面试题目:
阿里一面:
交叉面
hr面试
愿大家都能拿到自己理想的offer。
#阿里巴巴##面经##内推##实习#面试中,运气占很大一部分的,所以你们若是没有通过,一定不要气馁,继续加油。
每个努力的人 都值得钦佩,无论结果如何。
我说点面试中的小技巧,可以帮助你更好发挥,(注意,这个方法比较适合我,不一定适合你哇)
完全可以将学到的知识讲给自己(或者讲给别人),若是自己(别人)听你的讲述 能够听懂(使用自己的话去讲,而不要有专业术语),那么说明 你已经学好了。其原理就是 费曼学习法。感兴趣的人可以去了解下。
我个人习惯于 将一个知识点 分解为 xxx是什么,xxx有什么用,如何实现这个功能的(核心的工作流程),缺点是什么(以及为什么有这个缺点,缺点如何补救)。
举个例子, CMS垃圾回收器回收时为什么有内存碎片 , 首先分解为CMS是什么,内存碎片是什么?CMS垃圾回收器有什么用和Serial ParNew Parallel 等比较,优势,CMS是如何工作的,来实现尽可能降低响应时间的,为什么CMS有这个缺点,它是如何取舍的,如何补救这个缺点。
这些子问题都回答好,那么基本上这个问题就学的可以了。
这样可以检测你是否学好,而且,若是你都没法条理清晰地讲给自己,那怎么条理清晰地讲给面试官呢?
接下来就写下三次面试题目:
阿里一面:
1.个人介绍
2.项目介绍,项目介绍首先讲最好的项目,因为后面的项目可能都没时间去讲。
3.数据库 联合索引 用法
4.Spring IOC初始化过程
5.ConcurrentHashMap实现原理
6.CAS操作
7.ReentrantLock和Synchronized区别
8.CMS垃圾回收过程
9.Full GC次数太多了,如何优化。
10.直接内存 如何 管理的
11.线程池 参数。
线程创建的过程。有几种方法。
线程资源如何回收的。
一个题目:如何将一个二叉树,转为有序的双向链表。
阿里二面 1.自我介绍
2.项目介绍
3.堆和栈介绍
4.线程安全
5.乐观锁悲观锁
6.TCP三次握手
7.socket通信有关,select epoll
8.项目中的难点有哪些
我答得是:使用一个组合的设计模式 去解决文章多级分类的问题。
1.自我介绍
2.项目介绍
3.做这个项目的动机
4.TCP UDP IP ICMP
5.知不知道一个应用层协议,运输层既没有使用TCP,也没有使用UDP
6.二叉树中求最长路径。
递归的方式去实现。
先求左子树深度,后求右子树深度。相加减一,那么就是以当前结点为转折点的解。
然后递归求左子树的解,和右子树的解。返回当前解,左子树解,右子树解中最大的解。时间复杂度为O(n*logn)
其实可以优化到O(n) ,其实不必求两个子树的解,只需要求较深子树的解即可。
其实可以优化到O(n) ,其实不必求两个子树的解,只需要求较深子树的解即可。
7.有什么想问我的吗?
//您觉得成为一个顶尖高手,最重要的是什么呢?
兴趣。做自己感兴趣的事,就不会很疲惫,也会很开心。 //这一点我深有同感。
抓住你的兴趣,做你想做的事,自己驱动自己进步。
//很感谢您的建议。
hr面试
1.自我介绍。
2.项目介绍。项目中难点。得过啥奖没。
3.项目有什么不足?
4.前面的面试 发挥怎么样?
5.前面的面试难度怎样?
愿大家都能拿到自己理想的offer。