阿里-数据技术与产品部(两次简历面)
阿里-数据技术与产品部-数据研发(简历面-电话面)
下午突然打了个电话,以为是HR,结果是面试官,而且也是北邮毕业的,闲聊一下北邮的近况和自己现在的状态,接下来进入正题了。
简历面1: 34min 03-30 17:00
1、笔试的算法题,问还有没有印象?之后有没有自己进行过研究?(没a出来,没有印象了,也没研究)
2、算法题:找到两个字符串的最长公共子串。(回答了暴力解法)
3、上述算法题的应用场景?(没想出来)
4、说说有哪些常用的数据结构和算法?(链表数组哈希表,排序算法)
5、延伸到树,说说有哪些树结构?(B树、B+树、红黑树、二叉排序树、二叉平衡树)
6、B树和B+树和普通树结构的区别?以及应用场景?(联系到了索引)
7、为什么要用B+树作为索引?
8、你用过哪些索引?在使用索引时它是怎么存储在B+树上的?(主键索引、联合索引,又说了一下联合索引的最左前缀原则)
9、JDK用过哪些类?(List和HashMap)List用过哪些?(ArrayList和LinkedList)这两个的区别?
10、多线程访问List会造成什么?为什么会造成线程不安全?(数据脏读,中间有些线程的问题没有听懂)如何去保证这个线程安全?(上锁,可以加volatile或者sync)
11、问项目,与运营商沟通时的难点?(运营商不懂技术实现,先讲一下数据的输入与输出,方便沟通)
12、技术难点与学习过程?(hadoop、sparkRDD的计算,回答了看博客学习,接着问了看哪些博客,或者其他的技术网站)
13、介绍下Spark的RDD?如果一部分RDD丢失怎么办?(亲缘关系)什么是亲缘关系?(有向无环图)
14、怎么判断这个图是没有循环的?(双指针,一个步长为1,一个步长为2,有环会相遇)为什么要一个步长为1,一个步长为2?一个步长为1,一个步长为3不行吗?(一个步长为3的话可能相遇会比较慢?)
15、你最喜欢的课程?(数据结构)其中最喜欢的数据结构是什么?(哈希表)为什么喜欢?(介绍了下哈希表的实现以及优点)有没有看过其中源码?(HashMap的put和get)
阿里-数据产品与技术部-Java后台开发(又一次简历面-电话面)
之前的一次简历面当晚,又接到了阿里的电话,应该是一次正式一面了,不过一开始面试官说他们团队都在杭州,我说只接受北京,他就说给我推荐到其他团队了。然后官网上之前那个申请已回绝了,又给我加了一个新投递,岗位还给我换了后台开发,然后就一直状态面试中。等了好几天,阿里终于又来电话了。
简历面2:15min 04-03 20:30
1、介绍项目。
2、介绍Java堆和Java栈?
3、GC的流程?
4、HashMap和HashTable的区别?HashMap用的哈希算法?
5、什么是线程安全?
6、对于一个对象x,x.clone() == x返回true还是false?
7、Java深复制和浅复制?(没听说过。。。)
8、介绍一下多态?
9、用正则匹配中国区座机号?
10、Linux如何删除七天之前的.log文件?(不会七天之前)
11、vi中如何查找特定字符串出现次数?