一只菜鸡的秋招记录

自提前批以来遵循海投盲投狂投的原则,投了大大小小好几家公司,其中简历投完没消息的好几家,笔试完没消息的好几家,只剩下几家是勉强进入面试流程能够写下面经的
因为面试过程中,从牛客网中获取了很多面经,因此也想拿点东西回馈牛客。
下面就是我这两三个月来的卑微血泪史😭

字节跳动-抖音-后端:

2020·07·18 一面:

  1. 算法题:给定一个没有重复数字的序列,返回其所有可能的全排列,以及时间复杂度,非递归解法
  2. 问项目(数据库相关)
  3. MySQL的联合索引的底层实现
  4. Linux的虚拟内存的概念
  5. Linux的默认分页大小及原因
  6. 事务的概念
  7. MySQL中事务的实现
  8. MySQL什么时候会用到间隙锁

阿里巴巴-蚂蚁金服-后端

2020-07-21 电话面:

  1. 题外话:昨天的笔试题你预测自己能过多少,现在写的话能写出来吗
  2. Spring AOP是什么,Spring是怎么应用AOP的
  3. 介绍一下拦截器filter和interceptor,其区别是什么
  4. 介绍一下MVC架构模式,优缺点是什么
  5. 怎么样实现一个线程同步的hashmap,如何避免HashMap死锁
  6. JAVA的堆和栈的区别是什么
  7. 产生死锁的四个必要条件是什么?什么样的情况下算是死锁
  8. 数据库的事务隔离级别分别是什么
  9. 介绍一下Spring的事务同步管理器
  10. 分别介绍一下悲观锁和乐观锁
  11. MySQL是如何实现悲观锁的
  12. JAVA新建一个线程有哪几种方式
  13. JAVA创建线程池的核心参数是什么
  14. 在线程数量很多的情况下JAVA线程池的核心参数会发生什么变化
  15. 你的项目里向外提供的api接口怎么保证其并发性
  16. 你在项目中(平时的学习里)有没有遇到硬骨头或想放弃的时候,是怎么克服的

小米--南京--后端--实习

这个投实习纯属偶然,不过也就这一次我是通过hr邮箱投递的。成功的进入了面试流程,避免了暑期实习以及正式批秋招时莫名其妙简历被挂的惨剧

2020·07·29 一面

  1. ArrayList和LinkedList的区别
  2. ArrayList的源码相关
  3. LinkedList的源码相关
  4. HashMap的底层数据结构
  5. HashMap的并发问题
  6. ConcurrentHashMap怎么解决HashMap的并发问题
  7. ConcurrentHashMap加锁是在读时还是写时
  8. static关键字的作用
  9. 接口和抽象类的区别
  10. JVM的内存模型
  11. JVM中栈的实现
  12. 栈帧了解吗
  13. JVM中本地方法栈的作用
  14. JVM中栈会导致怎么样的内存泄露,分别在什么情况下
  15. 程序计数器会导致内存溢出吗
  16. JVM中堆是怎么分区的
  17. new一个对象是一定存放在堆中吗
  18. JVM中堆会导致怎么样的内存泄露,分别在什么情况下
  19. Java如何保证线程安全
  20. synchronized和ReentrantLock的区别
  21. synchronized和ReentrantLock的使用,何时释放锁
  22. volatile关键字
  23. 介绍一下Spring的IOC和AOP
  24. Spring AOP的实现
  25. Spring boot和Spring的区别
  26. Spring boot自动配置的实现
  27. 反射中如何调用类的私有方法
  28. MySQL如何查找性能问题,优化
  29. 项目如何自动部署的
  30. 手写快速排序代码

2020·08·03 二面

  1. 介绍项目
  2. 数据库索引的最左前缀原则
  3. 三个关键字的联合索引,最左用了模糊匹配,后两个还能用索引吗
  4. 删除一个表的数据有什么方法
  5. truncate和delete的区别,性能上哪个快
  6. truncate的实现原理
  7. 内连接和外连接的区别,左外连接和右外连接的区别
  8. JAVA上熟悉什么内容
  9. hashmap如何解决冲突
  10. 解决冲突一共有哪几种方法
  11. Java类的加载过程
  12. 为什么要有线程池
  13. 还有哪些地方用了池化思想
  14. 什么是死锁
  15. 介绍一下Synchronized和Lock
  16. Synchronized的加锁和释放锁的过程(锁粗化等内容)
  17. 在对象第一次被创建后首先会进入哪个分区
  18. 在新生代经历了n次major gc后对象会进入哪个分区
  19. 老年代在什么情况下会进行full gc
  20. 了解担保机制吗
  21. osi分层架构和tcp/ip分层架构的区别
  22. http属于哪一层
  23. tcp为什么断开连接时是四次挥手而建立连接时是三次握手
  24. http1.0和http1.1的区别
  25. 状态码(200,400,401分别是什么)
  26. Spring事务是怎么实现的
  27. Spring事务如何手动回滚
  28. 介绍一下session和cookie
  29. session的应用
  30. 算法题:容器盛水问题:给定一个整形数组arr,已知其中所有的值都是非负的,将这个数组看作一个容器,请返回容器能装多少水。

2020·08·05 三面

  1. 网络的分层模型
  2. tcp的握手协议
  3. tcp为什么需要第三次握手
  4. java申请创建数组时内存空间不够会怎么样
  5. java数组如何获知需要的空间
  6. 介绍一下JAVA的集合家族树
  7. 讲一下栈和队列的应用
  8. 非递归深度遍历,广度遍历二叉树
  9. vector为什么是线程安全的
  10. copyonwritelist为什么是线程安全的
  11. copyonwritelist有没有可能出现读着指针指向新数组的情况
  12. set为什么要用map来实现,有什么优缺点
  13. map有什么线程安全的类
  14. jvm的内存模型
  15. 虚拟内存是什么
  16. 虚拟内存的实质是什么
  17. Spring bean存放在jvm的哪块内存区域
  18. Spring bean为什么不会被GC回收
  19. 创建的bean的线程是哪一个
  20. java线程的基类是哪一个
  21. java线程的属性是什么
  22. 说出三个java的运行时异常
  23. 说出三个java的error
  24. 写一个双重校验锁的单例
  25. 24为什么需要volatile
  26. 验证一下自己写的单例是对的

华为--公共开发部--通用软件开发工程师

2020·08·31 一面

  1. 项目中采用了什么技术,框架,操作系统
  2. 项目代码量
  3. java抽象类和接口的区别
  4. jvm的内存模型
  5. GC的内存分区
  6. java有哪些需要注意垃圾回收的情况
  7. 多线程开发的注意事项
  8. 多线程调试定位的工具(jvm)
  9. Spring的优缺点
  10. 了解哪些操作系统
  11. idea用过的插件
  12. 编程题:数字转excel列表项
  13. 项目的小组分工

2020·08·31 二面

  1. 介绍项目
  2. mysql的索引使用经验
  3. mysql的外键选用原则
  4. 联合索引
  5. sql的注入问题
  6. spring事务的原理
  7. java常用的容器和应用场景
  8. Java arraylist如何修改为线程安全的
  9. Java map的键的选用原则
  10. 编程题:数组中0元素移至数组末尾,在原数组中操作,非零元素相对顺序不可改变

2020·08·31 主管面

家庭情况,兴趣爱好,社团经历,班级人缘,加班想法,华为看法

Bigo

2020·09·01 一面

这场面试里被面试官教育说回答问题回答的不够完整
  1. tcp,udp的区别
  2. tcp的三次握手过程以及原因
  3. http和https的区别
  4. java重写和重载的区别
  5. java接口和抽象类的区别
  6. 项目里哪里用了接口
  7. java如何实现线程安全
  8. 介绍各排序算法以及时间复杂度
  9. 手撕快排
  10. java反射如何实例化一个类
  11. Spring boot架构
  12. mysql表连接的关键字
  13. 项目里如何和mysql交互

美团--上海--后台开发

2020·09·02 一面

  1. 问项目
  2. 操作系统的虚拟内存是如何映射到物理内存的
  3. 内存分页和内存分段的区别
  4. 有哪些页面调度算法
  5. OSI七层模型
  6. 负责数据解密,压缩等工作的是第几层
  7. 数据链路层负责什么
  8. tcp协议在第几层
  9. tcp协议建立,断开连接的过程
  10. 输入URL到浏览器上到浏览器显示页面的过程发生了什么
  11. 从请求发到服务器的这一部分发生了什么
  12. http请求的内容
  13. http响应的内容
  14. 浏览器根据响应的什么来渲染页面
  15. http协议的幂等性
  16. http状态码的分类,405表示什么
  17. 为什么重写equal就要重写hashcode
  18. hashcode和equal方法的关系是什么
  19. map的实现原理
  20. 双亲委派模型是什么
  21. 可以重写String类吗
  22. 线程池是什么
  23. GC的过程
  24. 线程池的基本参数以及相应变化
  25. 数据库事务的四大特性
  26. 数据库的隔离级别以及分别解决了什么问题
  27. 不可重复读和幻读的区别
  28. 悲观锁和乐观锁
  29. 写SQL
  30. 算法题:
假设有m个男孩,n个女孩,要求每个男孩前面(包含自己在内)的男孩数量必须小于等于这个男孩前面的女孩数量,
比如:
1个男1个女,则仅有一种排列
2个男1个女,这种排列是不存在的
2个男2个女,则有,两种排列
如此类推
求m个男孩,n个女孩的排列情况
31. Integer类型的list在移除元素时如何判断参数是位移还是元素

2020·09·08 二面

  1. java集合类家族树
  2. arrayList的底层,扩容,相关操作时间复杂度
  3. arraylist删除元素时需要注意什么,可能会抛出什么异常
  4. hashmap的底层,为什么线程不安全
  5. concurrenthashmap为什么线程安全
  6. final关键字作用,final对对象的作用
  7. String为什么是final
  8. java有什么锁的实现
  9. synchronize和reentranlock的区别
  10. aqs是什么,在哪个包里
  11. aqs的核心思想是什么java创建线程的方式
  12. 线程池的核心参数及对应关系
  13. 常用的阻塞队列是什么
  14. 多线程时变量的可见性问题
  15. volatile关键字,什么是指令重排序,什么时候发生指令重排序
  16. java异常体系
  17. 自定义异常通常继承什么类
  18. 类加载的机制
  19. 双亲委派模型中什么叫父类加载器加载不了
  20. 如果要判断两个对象是否相等需要重写什么方法
  21. 为什么要重写hashcode()
  22. java为什么可以一次编译多处运行
  23. jvm的内存模型
  24. 内存泄露和内存溢出的区别
  25. java靠什么管理对象的生命周期
  26. Java 中对象的生命周期
  27. Java 对象的生命周期
  28. gc的流程,full gc后也无法分配足够的空间会怎么样
  29. 对象怎么样会进入老年区
  30. java反射的原理
  31. java如何通过反射实例化一个类,可以访问其私有属性吗
  32. Linux 输入文本文件中包含某字符串的数据,统计行数(grep -c只输出匹配行的计数)
  33. 算法:翻转二叉树,前序遍历


2020·09·11 三面

  1. 项目介绍
  2. 学校里最有挑战/最有成就感的事情
  3. Spring controller是线程安全的吗
  4. 怎么理解线程安全
  5. 什么样的代码是好代码
  6. 外键有什么优缺点
  7. mysql外键和普通键在底层实现上有什么不同
  8. 唯一性索引适合用哈希索引还是B树索引
  9. 一二面有什么问题是没答好的
  10. 怎么理解分布式
  11. 怎么理解缓存穿透
  12. 你近期的学习计划是什么
  13. 在网页显示上除了MVC还有什么架构
  14. MVC的缺点
  15. spring上有什么设计模式是你觉得比较好
  16. 开闭原则有什么好处
  17. 自动化测试能解决所有的质量问题吗
  18. 连续运行一个月可能会有什么隐患

2020·09·18 四面

  1. 自我介绍
  2. 项目介绍
  3. 项目学习到了什么
  4. 有无其他公司
  5. 工作地意向
  6. 工作意向
  7. 是否了解美团
  8. 是否了解部门业务
  9. 学习规划/职业规划
  10. 为什么喜欢2B呢
  11. 2B和2C的区别是否研究过
  12. 平时的兴趣爱好

腾讯--上海

2020·09·02 一面

  1. 代码题:单链表反转
  2. ArrayList和LinkedList的区别
  3. map的实现原理
  4. arrayList和vector的线程安全性的区别
  5. 如何写一段线程安全的代码
  6. 进程和线程的区别
  7. 线程和进程通信
  8. tcp解除连接的过程
  9. tcp解除连接为什么要发送ack
  10. tcp和udp的区别,应用场景
  11. tcp的拥塞控制
  12. TCP流量控制、拥塞控制
  13. 直播时为什么会卡顿
  14. 详解直播卡顿原因及解决方法
  15. 系统调用的实现

滴滴--CTO

2020·09·06 一面

  1. 项目架构
  2. java集合类
  3. map的实现原理
  4. map的实现类及实现原理
  5. 计算机网络常用的重要协议
  6. 一些重要的计算机网络协议(IP、TCP、UDP、HTTP)
  7. 介绍mysql
  8. 联合索引
  9. 输入sql到数据库返回结果的具体过程
  10. 当我们输入一条 SQL 查询语句时,发生了什么?
  11. B+树的数据结构
  12. 数据库大数据量的解决办法
  13. 程序设计时需求经常变更怎么办
  14. 写策略模式
  15. linux的基本命令有什么
  16. linux管道
  17. Linux 管道pipe的实现原理
  18. 列举排序算法
  19. 大文件中ip地址频率的排序Top10
  20. map统计频率再堆排序
  21. 常见的数据结构算法
  22. 算法:二维数组转二叉树(迷宫问题改编)
  23. sychorinize和lock
  24. 其他线程安全辅助类
  25. 线程池核心参数
  26. 线程池核心参数变更趋势

2020·09·06 二面

  1. map哈希冲突的解决办法
  2. JUC包
  3. volatile关键字,底层实现
  4. volatile关键字修饰对象时能保证对象属性的可见性吗
  5. Synchronized对类的锁会影响实例吗
  6. reentrantlock的底层实现
  7. BIO和NIO的实现
  8. tcp的timewait状态
  9. mysql的索引类型
  10. mysql联合索引的应用场景和注意事项
  11. Mysql where和having的区别
  12. linux如何查看磁盘io负载
  13. 造成死锁的原因,死锁的解决方式
  14. 知道的设计模式
  15. 装饰者模式具体实现

字节跳动--商业变现--后端

2020·09·07 一面

  1. 算法:给定一个字符串返回其最长无重复子串的长度
  2. mysql联合索引的注意事项
  3. mysql索引可以范围查询吗
  4. 聚簇索引与非聚簇索引的区别
  5. 数据库死锁原因及解决办法(原因是加锁顺序不一致)
  6. 快照读和当前读的区别
  7. redo log,undo log, bin log
  8. Redo log和bin log的区别
  9. synchronize的底层实现
  10. synchronize的优化,能不能降级(不能)
  11. 可重入锁和不可重入锁的区别
  12. 可重入锁的实现
  13. 线程池的重要参数
  14. hashmap的实现
  15. concurrentHashMap的实现
  16. Spring aop的实现
  17. Spring ioc为什么能够允许循环依赖

2020·09·09 二面

  1. 用一个骰子组成9种情况
  2. 怎么理解mysql的索引
  3. mysql为什么不用B-树做索引
  4. http和https的区别
  5. 最长公共子串

奇安信

一个喜欢让被面试者排队然后咕咕咕的公司

2020·09·13 一面

  1. mysql的字段类型
  2. mysql查询指令的执行顺序
  3. mysql查询的优化事项
  4. mysql函数
  5. java的数据类型
  6. Java string常用的函数
  7. static关键字
  8. final关键字
  9. java数组和集合的区别
  10. Java file类
  11. java创建线程的方式
  12. spring controller是多线程的吗
  13. spring是怎么和前端交互的
  14. get和post的区别

快手--北京

一个投上海秒挂,换北京后hr筛半个月,用人部门再筛半个月的公司

2020·09·15 一面

  1. 项目相关
  2. 设计模式
  3. 介绍一下模板方法模式
  4. 介绍一下代理模式和应用场景
  5. 适配器模式应用场景
  6. 装饰器模式应用场景
  7. 写单例模式
  8. 代码的this指的是什么
  9. 双重校验锁里为什么要volatile关键字
  10. Mysql innodb的事务是怎么实现的
  11. RR和RC的一致性视图的区别
  12. 聚簇索引和非聚簇索引
  13. 聚簇索引怎么避免页的频繁分裂
  14. innodb什么时候加行锁,什么时候间隙锁,什么时候表锁
  15. 辅助索引为什么存的是主键值
  16. 算法题:给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0?请你找出所有满足条件且不重复的三元组。
  17. ArrayList的hashcode,equals是怎么样的
  18. Set是如何去重的

海康威视--杭州

一个不晓得15分钟电话面有什么用但还是因为这15分钟挂了的公司

2020·09·17 15分钟电话面

让介绍自己的技术栈和项目的难点,其他就忘了

小红书--上海

唯一线下面的公司

2020·09·16 一面

  1. 排序算法,时间复杂度
  2. 快排的最坏时间复杂度,什么情况下
  3. 堆排序的步骤
  4. 算法题:按字典序输出1-n的整数
  5. mysql索引使用的注意事项
  6. 知道什么是覆盖索引吗
  7. linux怎么创建一个进程
  8. linux怎么kill一个进程
  9. synchronized和lock的区别
  10. 什么时候需要用lock
  11. mysql的高可用性架构
  12. mysql主从复制的具体方式
  13. tcp怎么保证可靠性
  14. 介绍一下拥塞控制的流程

2020·09·16 二面

  1. 项目
  2. 继续介绍堆排序
  3. 在软件学院里收获最大的是什么
  4. 成绩
  5. 有无其他面试流程
  6. mysql大数据量的优化方法
  7. 分库,分表,临时表,缓存
  8. spring解决的是什么层次的问题
  9. 算法题:反转链表

2020·09·16 三面

  1. 各种设计题:影院锁票,爬虫,种菜游戏
  2. 算法:全排列

2020·09·16 四面

  1. 有无其他面试
  2. 为什么不实习
  3. 性格的优缺点
  4. 兴趣爱好
  5. 工作的城市
  6. 成绩

汇添富基金

2020·09·18 一面

  1. 自我介绍(其实其他公司也会要求自我介绍,但我为什么这里要写出来,因为这个自我介绍面试官表达了我的自我介绍的不满意以及建议)
  2. 为什么本科就出来找工作
  3. 找工作最重要的时候
  4. 给自己JAVA能力打分
  5. Spring aop的相关问题
  6. 动态代理的实现
  7. 类加载时为什么出现no such a method
  8. 输入URL后的整个流程
  9. 面试官给简历的建议

恒生

一个招聘的时候声势浩大但面试流程以及过程一言难尽的公司

2020·09·23 一面

  1. 谈谈对spring boot的理解
  2. 404,401状态码
  3. http协议栈
  4. 项目相关(图是怎么构造的)
  5. Spring boot实例初始化后和销毁前执行方法的注解是什么

字节跳动--抖音--客户端

没错,又是抖音,这次换客户端了哈哈哈

2020·09·23 一面

  1. 进程和线程的区别
  2. 进程间通信
  3. 线程间通信
  4. http底层是什么协议
  5. http的请求头字段
  6. Http1.0 1.1 2.0的区别
  7. 浏览器输入URL到显示页面发生了什么
  8. java的多态
  9. java类型擦除
  10. 还有什么点是没问到的
  11. 这半年有学什么新技术
  12. 算法题:寻找 k 值:k 值为无序数组中的一项:所有左值都比它更小,所有右值都比它更大

拼多多

2020·10·11 一面

  1. 介绍一下项目
  2. 平时是怎么学习技术的
  3. 线程和进程的区别
  4. concurrentHashMap如何保证并发安全,与hashTable有什么不同
  5. Java 创建线程的方式,有什么区别
  6. Java 线程同步的方式
  7. JVM的垃圾回收器有哪些
  8. Synchronized 的底层实现以及锁升级的过程
  9. 操作系统页面置换算法
  10. 手撕LRUCache算法题

2020·10·11 二面

  1. 介绍一下java的集合类
  2. hashmap怎么解决哈希冲突
  3. jdk1.8有什么改进
  4. 静态代码块和构造方法分别在什么时候执行
  5. 归并排序的思想(分治)
  6. Spring ioc的概念
  7. Spring aop的原理
  8. Spring运用了什么设计模式
  9. 线程池的应用场景
  10. 线程池什么时候会到达最大线程数
  11. ThreadLocal的应用
  12. JVM的内存模型,堆存放什么,栈存放什么
  13. 手写一个线程安全的单例
  14. B+树的特点
  15. B+树的时间复杂度
  16. tcp和udp的区别
  17. http有什么状态码
  18. 504状态码表示什么(网关超时)
  19. cpu是怎样进行上下文切换的
  20. mysql什么时候会用到联合索引
  21. 联合索引的优缺点是什么
  22. 数据库的隔离级别有哪些
  23. innodb的默认隔离级别是什么
  24. 数据库的主从复制
  25. 算法题:给定一无序数组,其可能包含正整数,0,负整数,要求返回数组中任意三个数的最大乘积,时间复杂度O(n)
  26. 还有什么你擅长的我没问到吗

青颖飞帆

2020·10·12 一面

  1. map如何保证查询的时间复杂度是O(1)
  2. 数组的访问为什么是O(1)
  3. 二维数组先遍历行再遍历列和先遍历列再遍历行哪个更快,为什么
  4. 中断是什么
  5. 什么时候会发生中断
  6. 什么是缺页中断
  7. 操作系统重要的模块有哪些
  8. linux的page cache了解吗
  9. java为什么能够做到跨平台
  10. 如何选择合理的线程数
  11. 线程安全性指的是什么
  12. java如何保证线程安全性
  13. java为降低锁的性能消耗做了什么
  14. Java的servlet了解吗
  15. tcp如何保证可靠连接
  16. tcp的拥塞控制是什么,为什么需要慢启动和快重传
  17. Mysql select某一行的时候加的是什么锁
  18. Mysql insect一个主键值在已存在的主键值中间的行的时候加什么锁
  19. 算法题:校验ip地址的合法性并输出合法ip地址的二进制表示所代表的整数值(位运算)
  20. 设计模式题:设计能判断Request(包含uType和URL)是否合理的方法,其中每一个uType只能访问特定的某些URL,要求符合开闭原则
  21. 思维题:两人报数范围为1-4,轮流报数,谁先能报到23谁就赢,问怎么能保证自己一定会赢



好了,不管最后的结果怎么样,我的秋招就这样结束了。希望看到帖子的各位最后都能拿到满意的offer!春招不要再见了!


#秋招##面经##校招##小米##美团##华为##字节跳动##Java工程师#
全部评论
楼主目前上岸了吗😂
1 回复
分享
发布于 2020-09-30 16:19
😂经历相似
1 回复
分享
发布于 2020-10-01 00:05
联想
校招火热招聘中
官网直投
楼主你好,请问你是实习、校招还是社招?
点赞 回复
分享
发布于 2020-09-30 14:00
楼主你好,请问你是什么岗位?开发的话,是Java方向还是C++方向?或者其他语言方向
点赞 回复
分享
发布于 2020-09-30 14:00
同海康15分钟,然后没反应了, 太难顶了,加油。
点赞 回复
分享
发布于 2020-09-30 14:33
l老哥做的什么项目呢
点赞 回复
分享
发布于 2020-09-30 15:16
楼主是计算机相关专业么?才开始学java,感觉题目我都不会😂
点赞 回复
分享
发布于 2020-09-30 15:25
校友的美团和小红书应该都稳了吧,恭喜恭喜
点赞 回复
分享
发布于 2020-10-01 01:35
Mark
点赞 回复
分享
发布于 2020-10-06 16:39
mysql外键和普通键在底层实现上有什么不同。请问这个问题应该怎么回答
点赞 回复
分享
发布于 2021-05-05 01:39

相关推荐

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