阿里菜鸟一面-6.9(过)

这次是有实习之后第一次面试,幸好八股文和算法都没有忘记,但是深度还有所欠缺,感谢菜鸟过的机会!


  1. 笔试题:链表相加(秒)
  2. 自我介绍
  3. 实习经历介绍
    1. 提到网易的实习经历,介绍了转码服务和直播(这里介绍了差不多10分钟,这波自我介绍还是有点长,感觉面试官也没听,之后要总结一下怎么说好,有想法的老哥评论区告诉一下)、
  1. 说说线程池那几个参数的意义

https://tech.meituan.com/2020/04/02/java-pooling-pratice-in-meituan.html

  1. 5个核心线程数,10个最大线程数,100个容量的阻塞队列,说说任务进来的时候,线程池是怎么变化的
  2. 简单介绍一下你熟悉的设计模式
    1. 单例模式有几种实现方式,简单说一下
  1. volatile关键字
  2. 1.7跟1.8HashMap最主要的变化
  3. 为什么链表长度是8的时候就转成红黑树

因为链表是取一个数需要遍历链表,复杂度为O(N),而红黑树为O(logN)呗

为什么不直接使用红黑树,而是要先使用链表实在不行再转红黑树呢?

因为树节点的大小是链表节点大小的两倍,所以只有在容器中包含足够的节点保证使用才用它”,显然尽管转为树使得查找的速度更快,但是在节点数比较小的时候,此时对于红黑树来说内存上的劣势会

超过查找等操作的优势,自然使用链表更加好,但是在节点数比较多的时候,综合考虑,红黑树比链表要好。

    1. 那红黑树退化成链表的过程是怎么样的

这个在网上没找到什么比较好的答案,有想法的老哥欢迎评论区留言

  1. HashMap负载因子是多少,为什么是0.75、

负载因子是0.75的时候,空间利用率比较高,而且避免了相当多的Hash冲突,使得底层的链表或者是红黑树的高度比较低,提升了空间效率。(这里可以从为什么不能是0.5和1来说说)

  1. HashMap 1.8的扩容

扩容的本质是对新的len求模,因为hashmap的长度总是2的n次幂,所以元素的位置要么是在原位置,要么是在原位置再移动2次幂的位置

所以,jdk1.8扩容:

只要看对应的key对应扩容后的高位是否都为1,如果都为1,索引变成“原索引+oldCap”,如果原来的高位为0,那就在原位置!

  1. StringBuilder 拼接字符串底层是怎么实现的

把字符串添加到已有序列的末尾或者指定位置  底层用数组实现

value[count++] = (byte)c;

可修改的(char,JDK 9 以后是 byte)数组

  1. 讲讲Spirng中你比较常用的注解
    1. @Autowrited和@Resource的区别
  1. 聚集索引和非聚集索引
  2. 联合索引(a,b),where a > 5 and b = 7 有用到联合索引的有序的特性吗
  3. 事务的特性
  4. count(*)、count(1)、count(某个列)

原来这里要分情况讨论

  1. MyIsam引擎,因为不支持事务,所以会特意把表的行数存起来
  2. Innodb引擎,支持事务
    1. count(*)=并不会把全部字段取出来,而是专门做了优化,不取值。count(*) 肯定不是 null,按行累加。
    2. count(1)=InnoDB 引擎遍历整张表,但不取值。server 层对于返回的每一行,放一个数字“1”进去,判断是不可能为空的,按行累加。
    3. count(主键)=InnoDB 引擎会遍历整张表,把每一行的 id 值都取出来,返回给 server 层。server 层拿到 id 后,判断是不可能为空的,就按行累加。从引擎返回的 主键id 会涉及到解析数据行,以及拷贝字段值的操作。
    4. count(字段)怎么计数?
      1. 如果这个“字段”是定义为 not null 的话,一行行地从记录里面读出这个字段,判断不能为 null,按行累加;
      2. 如果这个“字段”定义允许为 null,那么执行的时候,判断到有可能是 null,还要把值取出来再判断一下,不是 null 才累加。
  1. 了解锁吗,简单介绍一下可重入锁和普通锁的区别
    1. 什么是死锁
  1. maven版本冲突怎么解决
  2. maven的依赖传递性
  3. git常用的命令
    1. git rebase

反问环节:

他说过了,等通知(昨晚11点的电话没接到,呜呜呜,许愿今天还会再打回来!!!

可以接受加班吗?双休,加班到晚上10点

好久没发面经了,发一波面经,许愿二面赶紧来!!

#菜鸟网络##面经#
全部评论
在语雀上编辑挺好的,一粘贴过来,标号就全乱了😥
点赞 回复 分享
发布于 2021-06-10 14:38
时隔三个月,再次被阿里捞起来,许愿今天能约面试!太爱阿里了
点赞 回复 分享
发布于 2021-06-10 14:40
联合索引那题是说a走索引,不是等值查询,所以b不走索引吗
点赞 回复 分享
发布于 2021-06-16 02:37

相关推荐

1 25 评论
分享
牛客网
牛客企业服务