剑指阿里之java后端(牛厂小试)
阿里云云原生中间件实习生一面(2021.1.29——37min)
简单聊了聊学校与学习
说下在大学期间用Java做过哪些项目
说说在项目(平时)中遇到什么问题,并怎么解决的(具体说明)
说下Java的同步机制
由于我说了synchronized关键字,然后就问了synchronized同步机制怎么实现的(当时没回答出来),于是就问了那你知道lock嘛(不知道。。。。),再问了volatile,说一下它和synchronized的区别。
你在项目中用到过synchronized,lock和volatile嘛,如果有说下具体怎么用的
介绍下HashMap扩容机制
说下计算机网络中的ARP协议是什么,具体怎么实现的(比如什么算法,什么流程)
简单说下操作系统中的虚拟存储机制,分页管理和分段管理的区别以及优缺点
使用过数据库嘛(由于我说的平时用的比较多的是MySQL),然后说那你说下MySQL的数据库引擎有哪些,你用的是什么,为什么要用它,它和其他数据库引擎的区别
说下Spring的事务特性(ACID)
学过编译原理嘛(由于还没学,就没继续问了)
使用过Linux嘛(然后我说用过阿里云服务器,就简单使用过Linux系统),但是后面就没深问了
来两道算法题吧
查找数组中的第k小值,有哪些方法,简单说下
我的回答
- 首先对数组排序,可以使用快速排序,归并排序这种快速排序算法实现,然后通过下标查找即可O(nlogn)
- 利用快速排序中的分区思想,实现O(n)查找
这些算法书上都有,还有什么其他的解法嘛(给了提示:例如堆)
然后就补了个小根堆实现
对于有重复数字的数组,如果用二分查找实现找到第一个元素的位置
最近在看什么书啊(我说的是设计模式),然后就问你比较熟悉的设计模式是什么,具体介绍下(我说的是外观),接下来Spring中哪里体现了外观模式
有什么想问我的嘛
(可能不全)
#校招##阿里巴巴##Java工程师##实习#第一次面试虽然凉凉,不过感觉面试其实没想象的要难,面试官人好好,会给提示。感觉就像聊了三十几分钟的天(不过这对话结果可能有点让人不愉快hhh)