编程语言
首页 > 编程语言> > 阿里菜鸟春招java后端电话一面(3.15)

阿里菜鸟春招java后端电话一面(3.15)

作者:互联网

一、自我介绍

1、学校专业、奖学金,团支书工作。(可以不说)

2、实验室、工作内容。

3、比赛项目:用到的技术,负责的板块。

4、实验室项目:同上。

二、实验室任务

1、招新工作。

2、日常学习、学习路线以及答辩机制。

三、项目(不够熟练,要重新组织语言)

1、介绍项目内容。

2、碳积分计算,数据接口怎么获取?

3、难点在哪?

因为我说了shiro+JWT,他问我JWT是什么?(回答的不够精简具体)

详细介绍shiro和JWT的作用和处理逻辑。

如果不用shir o该怎么做?(答得不好)

四、数据库

1、B+树结构?

① 多路平衡查找树

②只有叶子结点存数据,减少IO次数。

③每次都要查到叶子结点,查找性能稳定。

④底层是有序双向链表,便于范围查找。

2、 只有叶子结点存数据,为什么可以减少IO次数?

3、B+树一般有几层?(没答出来,感谢学长听完录音后帮我指导和延伸思路:)

一般一到三层就可以支持千万级别的数据。

延伸:为什么呢?为什么不用四到五层支持上亿级的数据呢?

因为一般来说,一个单表不会支持那么多数据。

继续延伸:怎么分表?

五、数据结构

1、无序列表怎么算第m 大的数?

答出来了快排,但是我说要全部排完才能出结果。

重新想:

不用全部排完,由于快排的算法找到一个基准点,使小于它的数在它左边,大于它的数在它右边;

这样它所在位置的下标是M,如果M>(m-1),只要再排它左边的数就好了,反之则排右边,直到M==(m-1)就找到了。

2、用栈来实现队列。

3、计算二叉树树高。

六、JVM

1、判定是不是垃圾?

两个算法,引用计数法和可达性分析算法。

自我延伸:有哪几种方法判断GCRoot?

七、java

1、大int和小int的区别?

①引用类型和基本数据类型。

②堆、栈。

③自动装箱、拆箱场景,以及装箱其实就是调用valueOf。

反思补充:

还可以提到比较相等时的情况(==和equals)。

默认值不同,Integer:null,int:0。

八、计网

1、http和https的区别?

2、SSL加密过程(没get到他问的点,以为是说服务端和客户端之间握手过程,但是应该是说加密算法什么的)。

九、java

1、HashMap底层结构?

2、为什么转红黑树?

性能更好balabala,条件只提到了8,没提到64(晕哦这也能忘。

3、怎么解决hash冲突?(答得不够具体)

4、底层结构说的太简单,再详细说说?

头插尾插、阀值、加载因子。

十、实验室项目

1、项目内容?

2、负责什么部分?

3、数据库怎么设计的?

十一、反问

1、部门的技术栈和业务?

自己百度。。。

2、对我的表现有什么评价?

公司规定不准给。。。

虽然只面了30多分钟,但是基本上啥都问到了,暴露了很多缺点,发现自己在准备的时候没有多问一句为什么,都想的比较浅,项目准备的也不够充分,感谢学长学姐听了录音给了我很多有用的建议~

面是周一面的,挂是周六挂的,哎,的确是很多不足,继续冲吧。


为帮助开发者们提升面试技能、有机会入职BATJ等大厂公司,特别制作了这个专辑——这一次整体放出。

大致内容包括了: Java 集合、JVM、多线程、并发编程、设计模式、Spring全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat等大厂面试题等、等技术栈! 

需要获取以下这些面试题答案以及学习资料得话麻烦一键三连之后微信扫描下图作者助手的微信:( psk12221  )添加即可免费获取到哦

朋友扫描下方二维码免费获取:暗号:【CSDN】

ÃÃÃÃÃÂ¥ÃÃÃÃèÃÃÃÃèÃÃÃÃÿÃÃÃÃéÃÃÃÃæÃÃÃÃÃÂ¥ÃÃÃÃÃÂ¥ÃÃÃÃÃÂ¥ÃÃÃÃþÃÃÃÃçÃÃÃÃæÃÃÃÃèÃÃÃÃÿÃÃÃÃð

看完三件事❤️