猿辅导服务端一二三面面经

猿辅导一面 8/15号

1、自我介绍,自己介绍项目里的技术难点(总是逃不过这个环节,实在是没啥亮点)

2、redis在项目里的使用,使用的架构(单机版)

3、单机版在实际生产中会有什么问题,除了单机版还了解哪些架构方式

4、问jvm内存模型

5、说说Java垃圾回收是怎么做的

6、Java的多线程是如何实现的

7、多个线程操作同一个资源会出现什么现象,怎么避免这些问题(线程安全的措施)

8、进程和线程有什么区别,常规题

9、线程之间的调度策略

10、线程之间的调度策略

手撕代码:

1、链表数字+1

2、IP地址划分,力扣93. 复原IP地址

猿辅导二面 8/21

没录音,凭记忆写的一点,不全

1、springboot的启动类有个注解,@SpringBootApplication如果放到别的类上,能启动成功嘛(瞎猜的不行,面试官说行)

2、双亲委派模型、为什么要打破,怎么打破

3、垃圾回收,G1收集器和CMS收集器,CMS为什么要stop the world,怎么解决浮动垃圾问题

不记得了

手撕代码:

给定一个32位正整数 n,你需要找到最小的32位整数,其与 n 中存在的位数完全相同,并且其值大于n。如果不存在这样的32位整数,则返回-1。

示例 1:

输入: 12 输出: 21 示例 2:

输入: 21 输出: -1

猿辅导三面 8/26号

1、问实验室项目,10min

聊一下数据库,主要聊关系型数据库mysql

2、自己展开讲一下innodb引擎

问题:现在都使用固态硬盘,是否存在磁盘寻道的问题,B+树的优势如何体现

3、可重复读在innodb里如何实现的

问题:自己举个实际的例子,加间隙锁的例子,锁哪些范围

4、一段sql语句,怎么建立索引来进行查询优化

select * from table where col1 > 10 and col2 = 20 order by col3

评论:关于理论的部分答得很好,实战的部分都不是很好

5、redis 的zset,跳表的底层数据结构,实现原理,为什么用这个,怎么查找插入

6、设计一个微信朋友圈功能场景题,需要实现的功能:

用户可以加好友,发动态,浏览首页的动态,如果让我来实现该怎么实现这几个功能,底层数据怎么设计数据库表

7、上面那个场景题,动态里的图片具体怎么存储

手撕代码:

1、M个分段有序数组如何进行快速查找一个整数所在的位置,输出<分段index, 分段内的index>,没有返回<-1, -1>

input: <1, 3, 5, 10> <11, 14, 18, 20>

<25, 30, 30, 40>

find 10 return <0, 3>

find 30 return <2, 2>

2、好友关系进行分组

用户, 好友关系。进行分组。

用户:ABCDEFG

好友:AB,CD, FG,CE, AD

分组:{ABCDE}, {FG}

#面经##校招##猿辅导##Java工程师#
全部评论
请问楼主,26号这一波,今天收到OC了吗
点赞 回复
分享
发布于 2020-09-04 22:46
看到了,offer加一,强
点赞 回复
分享
发布于 2020-09-04 23:40
小红书
校招火热招聘中
官网直投
大佬能讲讲朋友圈这个怎么做吗
点赞 回复
分享
发布于 2020-09-05 02:44
好友关系怎么做呢
点赞 回复
分享
发布于 2020-09-05 16:38
感觉三面是同一个面试官,不让我讲秒杀项目,说听的太多了,我就讲了实验室的项目
点赞 回复
分享
发布于 2020-09-06 14:05
请问最后一个算法题,是使用hashset做吗?还是使用什么方法
点赞 回复
分享
发布于 2020-09-09 09:57
大兄弟,咱们题目好像一样,你是去辅导研发部了吗?
点赞 回复
分享
发布于 2020-09-30 08:02

相关推荐

6 64 评论
分享
牛客网
牛客企业服务