首页 > 阿里Java研发面经(一、二、三面已过)
头像
自习室老鼠
编辑于 2021-04-17 09:58
+ 关注

阿里Java研发面经(一、二、三面已过)

3/25一面

面试官人很好,先让我选学的好的一门课,我选的数据库

  1. MySQL为什么用b+树
  2. 为什么不用hash索引, 答:不能范围查找
    追问:如果现在用ssd,随机查找很快,范围查找没有优势
    答:ssd贵
    追问:不考虑价格
    答:不知道
  3. MySQL服务器发生宕机怎么办
  4. 聚集索引,非聚集索引
  5. select * from t where a=1,b=2,c>=3,d=4怎么建索引,为什么
  6. 死锁产生条件
  7. java的多态和继承
    能多重继承吗,为什么
    默认修饰符是什么,public还是private,为什么
  8. 算法题:给你一个长度为N的链表。N很大,但你不知道N有多大。你的任务是从这N个元素中随机取出k个元素。你只能遍历这个链表一次。你的算法必须保证取出的元素恰好有k个,且它们是完全随机的(出现概率均等)。
    答:不会,后来查了查是水库抽样算法
  9. 算法题:0/1矩阵,找出内部元素全是1的最大的正方形边长(leetcode 221)

3/30二面

  1. 快速排序思想,时间复杂度,最坏情况怎么优化
  2. 10万个数,取出其中最大的五个数,时间复杂度(top k问题)
  3. 讲一讲hashmap,什么时候出现循环链表
  4. 线程安全的java容器讲一个
  5. 乐观锁和悲观锁思想,MySQL怎么实现乐观锁(不会)
  6. 数据库底层数据结构(b+树)
  7. 线程池核心参数,工作流程
    如果任务队列满了但最大线程数没满,是先处理任务队列里的还是先处理新来的任务
    线程池的线程数怎么确定
  8. minorGC条件,什么时候进入老年代
    有没有进入老年代的特殊情况
    答:大对象直接进入,动态判定年龄
  9. 怎么实现线程安全的单例模式
    答:双重校验锁实现的单例模式
    追问:volatile在其中的作用
  10. AQS底层结构,线程间是怎么通信的
  11. ReentrantLock和synchronized区别
  12. CPU被占满怎么排查哪一行代码出问题
  13. 用过Spring吗
  14. 聊了聊项目,如何改进

3/31三面

  1. 聊了半个多小时的项目价值和意义(这次的面试官很看重业务价值,需要好好说明解决了什么问题,项目的价值)
  2. hashmap是线程安全的吗,如果要求线程安全用什么
  3. JVM内存结构, 内存溢出原因,用什么工具判断
  4. 怎么设计一个后端架构,需要哪些组件
  5. 怎么做文本聚类(因为自己研究生方向是文本挖掘)
  6. 怎么学的java
    答:看书,还有博客
    追问:印象深刻的地方

更多模拟面试

全部评论

(5) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

热门推荐