最近阿里的很多部门已经开始暑期实习的招聘工作了,目前看到有阿里云、钉钉、蚂蚁集团等部门。
也看到很多牛友已经面试了,这里把大家的面试题目整理一下,希望对后面面试的同学有帮助。
下面面试题目全部来自牛客网友分享,下面总结了近一周内的面试题目!
下面主要从以下几个方面整理,分别是Java基础、MySQL数据库、Spring相关框架、计算机基础和中间件、项目和手撕算法题。
1Java基础
1、Java重写和重载的区别?
2、Java有哪些数据结构
3、说说HashMap的源码原理
4、JVM的双亲委派机制说一下
5、JDK源码阅读过哪些?
6、说一下jvm的内存模型?
7、List、HashMap和HashSet的使用区别?
8、gcroot都有哪些?老年代和新生代的区别?
9、Heap是什么?和Stack的区别
10、创建一个对象的过程是什么?
11、对eaquels的理解?
12、HashMap和ConcurrentHashMap的区别?
13、HashMap为什么用红黑树?
14、JVM调优参数有哪些?随便说几个
15、垃圾回收机制、为什么分老年代和新生代?
16、反射是什么?
17、Java中创建多线程的方式有哪些?线程池有哪些参数?执行流程和拒绝策略是什么?
18、Java的序列化和反序列化?
2MySQL数据库
1、MySQL的事务和引擎等问题
2、MySQL的调优看过吗?有调优经验吗?
3、MySQL的索引失效有哪些场景?
4、是否了解数据库,都了解哪些内容?
5、MySQL中都有哪些锁?
6、基本语句,如何增加列?
7、数据库读写分离
8、InnoDB引擎为什么使用B+树?
9、如何发现慢SQL
3Spring相关框架
1、对Spring的理解?
2、Spring源码看过吗?说一下Bean的生命周期
3、 Spring Boot启动类注解是什么,有什么作用
4、Bean注入过程?
5、定时框架用过吗?
6、Spring IOC和AOP讲讲你的理解?
赠送一个Spring IOC/Bean生命周期源码图:https://www.processon.com/view/link/6129b90b7d9c081c75265820
4计算机基础
1、TCP和HTTP的区别
2、是否了解操作系统,进程和线程的区别,资源争端怎办?
3、TCP三次握手,丢包如何解决?
4、TCP拥塞控制详细说一下?
5中间件等
1、消息队列用过哪些?消息队列的作用?
2、Redis项目中如何用的?用来做什么?
3、Redis挂了会发生什么?Redis集群,哨兵模式?
4、Redis缓存击穿、缓存雪崩、缓存穿透讲讲,如何保持数据不丢失?
6项目
1、问秒杀项目:介绍一下你对项目高并发的理解;
2、库存超卖如何解决的?(商城类项目)
3、Redis缓存的库存怎么解决库存的超卖?
4、项目过于依赖Redis,你如何解决Redis崩掉了?
5、针对实习项目问细节?
6、Redis缓存了什么内容?Redis空间不够怎么办?如何实现缓存和数据库同步?目前的瓶颈?如何提高你的QPS? 一个请求处理的时间?(秒杀项目)
7、项目遇到的最大挑战是什么?
8、说说项目中的闪光点和亮点,或者你是怎么进行解决的吧
7手撕算法题
1、判断镜像二叉树(剑指 Offer 27. 二叉树的镜像)
2、找最大公共字符串(剑指 Offer II 095. 最长公共子序列)
3、判断括号的合法性(20. 有效的括号)
4、单词反转
5、给定一段时间(9,1-12.1)以及这段时间不要的时间(比如11.1-11.9),输出这段时间的工作日
6、模拟队列,安检通过则出队,不通过重新排队。60岁以上的可以插队到比他年龄小的人前面,一共只允许10个人插队。
8总结
经历过去年的阿里秋招,感觉阿里对于Java的要求还是蛮高的,从对Java语言的掌握程度、再到一些框架和中间件等问的较多,纯八股类的大部分部门问的不太多。
结合上面的实习面经来看,问Java语言的题目比较多,其次就是框架和项目。另外就是一些实战能力,比如MySQL调优、JVM调优、项目的一些场景类的题目。
总的来说,阿里的面试还是不简单的,如果想拿到阿里的offer,需要好好准备!
推荐阅读:
欢迎关注 「bigsai」,后台加我拉你进力扣打卡小队
本文同步分享在 博客“Big sai”(CSDN)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。