双非本科艰难的度过春秋招,回顾一下我整个秋招面试题

整个秋招一共有面试字节、美团、百度、腾讯、阿里、微信支付、斗鱼、网易云、快手

但是拿到的offer就三家百度,阿里,字节,在这以时间倒叙的方式回顾整个秋招\春招

小编也将整个秋招的面试题及答案都已经整理好啦,戳这里免费领取,暗号:CSDN,还有更多大厂面试专题资料和视频哦

                                                                      


字节跳动2020-9-16(Offer)

一面

1、java的注解是运行时还是编译时执行?字节码里面会带有注解的信息吗

2、讲讲HashMap底层一个put调用的方法

3、讲讲红黑树

4、讲讲动态代理(三种都讲讲)如何实现的RPC框架的动态代理有想过吗(没有,应该是Dubbo的SPI)

5、兑换硬币

6、二叉树前序遍历

7、线程池

二面

1、讲讲异步IO(AIO,BIO,NIO)

2、讲讲多路复用(select\poll\epoll)

3、内核态和用户态

4、手写一个线程池(显然不会)

5、复制链表

6、虎羊问题

7、讲讲Java的锁

8、一致性hash算法说一下

三面

1、讲讲项目的优化点和bug

2、给出一个数组,找出满足i<j<k且nums(i)<nums(j)<nums(k)

3、接雨水

4、讲讲你在学习的过程中觉得有意思的点


美团2020-9-14(一面挂)

1、秒杀有什么难点

2、讲讲秒杀限流、降级、熔断(降级应该是关闭一部分非核心业务)

3、如果给你开新版本会怎么做(做分布式,忘记说做分布式事务了)

4、如果一台JVM每隔一小时OOM一次,你会从哪方面排查

5、两个数组合并(这里其实可以用一下交换的策略减少内存开销)

6、划分服务按什么划分(业务,代码量)

7、数据不一致怎么办

面试资料:戳这里免费领取,暗号:CSDN,还有更多大厂面试专题资料和视频哦!


百度2020-9-10(Offer)

一面

1、讲讲java的异常体系

2、jvm的结构(PC,堆,虚拟机栈,本地方法栈)哪个地方会出现内存溢出(除了pc都会)了解过运行时常量池吗

3、讲讲synchronized同步方法和同步静态方法有什么区别,讲到对象头,里面有有什么

4、volatile的作用

5、讲讲集合类,讲讲红黑树

6、限流用的是什么(guava的包做的服务器限流)

7、linux复制和移动用什么指令,服务器之间的用什么

8、redis的分布式hash

9、ThreadLocal了解吗(直接扣源码)

10、引用类型有多少种(强软弱虚)

11、equal和hashcode(这是1.6的规范)

12、mysql讲讲rr和rc的区别(readview和mvcc那一套讲讲)

13、讲讲垃圾回收算法和gcroot

二面

1、数组和链表有什么区别

2、200亿条记录,每条记录有唯一id,如何加快查询,16G内存,可用磁盘

3、算法:前中序确定一棵树

4、聊项目

5、限流和降级是一回事吗?

6、rpc框架需要考虑哪些

7、了解微服务吗?为什么要使用微服务

三面

1、聊实习

2、印象深刻的大学的事情

3、遇到的困难

4、聊项目


腾讯CSIG 2020-9-10(二面挂)

一面

1、讲讲java的异常体系

2、讲讲http报文格式(首行+报文头+空行+报文体)讲讲报文头

3、讲讲jvm有什么参数

4、讲讲redis消息订阅发布模式(不会)redis有什么数据结构(5个)排行榜有什么数据结构(sorted set)讲讲redis的集群模式(三种模式,主从,哨兵,集群)

5、讲讲http1/2的区别

6、tcp和udp的区别

7、讲讲项目如何做到高可用的无状态

8、源站探测方案

9、了解MTU吗,UDP包头过大怎么办(会分片,MTU默认1500)

二面

1、讲讲String、StringBuilder、StringBuffer

2、怎么做限流的

3、协程和线程

4、go语言的GPMS是什么(稍微讲了讲)

5、char可以存下中文吗(应该)中文多少个字节(他妈的,我回答3个,其实是utf-8是这样的)unicode和utf-8有什么关系(Unicode 是「字符集」UTF-8 是「编码规则」)

6、guava的限流组件底层源码

7、如何设计一个go的error(底层就是一个interface)

8、红黑树和AVL树

9、数组和链表如何设计一个hash表(参照hashmap)如何优化(用红黑树)

10、优化之后,瓶颈时在哪里?(tomcat,redis,mysql,mq)

11、讲讲快排(优化讲讲)

12、sychronized

13、mysql的两个存储引擎

面试资料:戳这里免费领取,暗号:CSDN,还有更多大厂面试专题资料和视频哦!


阿里 2020-9-9(Offer)

一面

1、聊聊atomic,讲讲unsafe有什么方法,CAS使用AtomiReferrence能解决ABA问题吗?

2、聊聊volatile(可见性顺序性)

3、讲讲synchronized(objectmonitor)为什么说synchronized是重量级锁?ReentranLock是重量级锁吗

4、聊聊ReentranLock和Synchronied的差别

5、mysql的Innodedb和myisam(表级锁,事务)

6、聚集索引和非聚集索引有什么区别

7、mysql如何实现事务回滚(undolog和redolog,把一个update的流程去讲一遍)

8、MVCC了解吗(利用的就是undolog+readview去实现,讲讲readview,然后讲讲可重复读和读已提交的区别)

二面

恐怖的场景题

三面

1、Hash冲突的解决

2、建模场景题,不会

3、红黑树

4、讲讲实习项目和自己做的项目

5、性格

6、看的书籍

交叉面

1、聊实习

2、看的书籍

3、聊秒杀的分布式事务


微信支付 2020-9-4 (一面挂)

1、朋友圈(并查集)

2、lc600 不含连续1的非负整数

3、atm先扣钱还是先吐钱(其实应该是先吐钱,然后对他加锁,对账)

4、了解操作系统的信号量和互斥锁吗(一个有资源数,一个没有)

5、mysql如果abc联合索引,那么b进行查询,走索引吗(应该不走)

6、一条棍子,组成三角形的概率多大(分析另外两段x,y,a-x-y最后得到1/4)

7、有哪些排序是稳定的(归并,插入,忘了冒泡排序)


斗鱼2020-8-28(hr面挂)

一面

1、操作系统进程和线程区别,进程通信

2、JVM结构,OOM

3、有了解过tomcat吗(没有)调优过吗(没有)

4、分布式session怎么做的

5、如果上传一个大文件15m,在spring设置最大文件10m,报错怎么处理,是在tomcat端就抛异常(先看日志,看是哪里出问题,==面试官:直接说需求做不了==)

6、Spring的IOC和AOP

7、链表反转

8、信号和信号量(信号好像是底层的东西,信号量是个同步机制,==信号:(signal)是一种处理异步事件的方式。信号是比较复杂的通信方式,用于通知接受进程有某种事件发生,除了用于进程外,还可以发送信号给进程本身==)

二面

1、项目

2、redis数据结构,说说跳表

3、hashmap底层,一个put的过程(忘了整个讲讲扩容)

4、mysql主从复制

5、synchronized和reentrantlock的区别,讲讲AQS


网易云 2020-8-14 (hr面挂)

一面

1、项目

2、String StringBuilder StringBuffer 区别

3、delete和drop的区别

4、索引不好的地方(频繁改动)

5、说说垃圾回收算法(复制,标记清除,标记整理)整个垃圾回收的过程(新生代永久代)

6、给出几个例子判断索引是否失效

7、sleep和wait的区别(会不会释放锁,超时时间,线程状态)

8、synchronized和volatile的区别(讲讲区别就好了)

9、讲讲hashmap(整个put的过程,1.7和1.8的区别)

10、mq如何保证消息不丢(投递前,投递中,投递后)

11、redis击穿(布隆过滤器和返回空对象)

12、redis和mysql数据不一致(先删再改)

13、讲讲java的线程池

14、讲讲jvm垃圾回收算法,讲讲过程(三种算法,整个垃圾回收的过程)

15、讲讲linux常用指令(隐藏?)

16、binlog的用处,它的应用场景。

二面

1、聊项目

2、redis替换算法

3、设计一个评论系统

快手 2020-8-11 (三面挂)

一面

1、讲讲实习优化代码(优化告警)

2、聊聊秒杀,redis和数据库不一致怎么处理

3、RabbitMQ的作用(单纯做解耦)

4、聊聊Redis的RDB和AOF,适用于什么场景?
5、讲讲ConcurrentHashMap

6、你们用的mysql隔离级别(可重复读)有什么特性(可重复读,解决幻读)如何解决幻读(MVCC和间隙锁)间隙锁如何两边范围

7、讲讲垃圾回收机制(7个垃圾回收器讲讲)

8、讲讲avl树和红黑树

9、b+树和b树区别(能够范围查询)b树也可以范围查询,例如中序遍历去查询(我觉得是这样遍历次数更多)

10、算法:逆序对

二面:

1、聊了一堆项目背景

2、ArrayBlockingQ和LinkedBlockingQ应用场景 ArrayBQ是怎么实现的(循环队列)SynchronousQueue应用场景(==不清楚==)

3、http1.0 1.1 2.0,如果http2.0一个连接多个请求中,一个请求阻塞会导致所有请求都阻塞吗会不会有请求阻塞把整个链路都阻塞的情况?

4、TCP怎么去取合适的拥塞值(慢启动,先2倍,再自增,最后减半)在客户端还是在服务端做拥塞?那么拥塞窗口在哪里控制(服务端)

5、AVL树和红黑树最大区别(旋转次数,更加适用于增删查改)有测过吗?(没有)

6、B树和B+树,为什么查询B树效率会慢(因为不平衡,而且无法做到范围查询)如果让它做范围查询会怎么样(感觉效率会变低)为什么不用红黑树?(多叉,本质原因就是树的高度会低!)

7、算法:一个数组,由两个有序序列形成例如 1 3 5 2 4 6

三面

1、讲讲jvm的内存管理

2、聊聊项目,了解腾讯项目的底层?

3、操作系统内存管理理解吗?

4、秒杀中的一个商品数量非常多怎么办

5、性格优缺点

6、设计一个数据结构,队列中出队列最多次数的字符(一个hash,一个队列,如果并发将其改造成并发的容器,如果分布式改造为分布式的容器)

7、实习干的活


百度 2020-7-25 (一面挂)

1、实习经历

2、mysql的Innodb的有什么特点(说了事务,整个update的过程,==忘了说行锁==)

3、mysql的int多少个字节(妈的,==没想到啊,4个字节==)例如int(10)和int(5)有什么区别

4、聊聊Synchronized(直接聊底层原理)锁膨胀的过程(无锁,偏向锁,轻量级锁,重量级锁)

5、1.8有什么新特性(这里没讲啥)内存结构有什么变化?(永久代移除)为什么要把永久代变为元空间

6、了解JVM优化吗?讲讲优化参数

7、maven的install和package有什么差别,realease版本和快照版本有什么不同

8、git有多少个工作空间?(三个)听说过reset吗

9、聚集索引和稀疏索引的差别,Innodb为什么一定要有主键?==(因为标识一条数据是唯一的,而且它和MyISAM不一样,它的数据是存在一起的,只能通过主键去取得唯一)

10、如何进行索引的优化(explain)怎么看(看id,type,key,possible key extra)还有吗?(没了)

11、开放场景题,设计一个订单系统(负载,缓存,分库分表,消息队列)

12、给出具体方案,订单系统(1、直接用db 2、异步分布式事务扣库存 3、分布式锁 4、分段锁)

13、PrintGCDetail如何看(这东西里面有新生代垃圾回收后有多少内存,老年代回收后有多少内存)

总结

回顾整个秋招,发现能力上还是有很大的欠缺,有的甚至一面就挂了。

所以小编将所有面试题和答案都整理好啦!学会了赶紧去面试吧

戳这里免费领取,暗号:CSDN,还有更多大厂面试专题资料和视频哦!

 

猜你喜欢

转载自blog.csdn.net/qq_43080036/article/details/108828832