360,阿里,美团,快手,贝壳,猫眼等面经及个人学习记录帖
360
一面(问了好多,顺序不记得了)
-
自我介绍
-
Tcp udp区别
-
Http https
-
Https的具体工作原理
-
什么时候应该建索引,注意事项
-
海量数据分页显示的实现
-
单例模式
-
进程和线程
-
线程状态,具体怎么运行的
-
数据库引擎Innodb和myisam区别
-
Redis的数据结构
-
Redis是基于内存的么
-
Redis的list zset的底层实现
-
跳表
-
数组和链表的区别
-
异步队列的实现
-
怎么设置缓存的失效时间
-
怎么更新失效缓存
-
什么是cdn,有什么用
二面
-
自我介绍
-
Http https
-
进程线程区别
-
项目难点,怎么解决
-
平时怎么学习的
剩下的忘了
Hr面
-
自我介绍
-
考不考研,为啥
-
期望薪资
-
项目难点
和小姐姐聊了好多,但是想不起来了…
阿里
一面
- 如果让你设计Spring IOC怎么设计
- 大数据量查询的优化
- B和B+树区别
- 高并发场景下自己设计一个消息队列
- NIO原理
- 有什么想问的
二面
- 在线编程,简单的topK
三面
-
GC,垃圾回收算法
-
进程线程区别
-
静态方法内部能不能调用非静态
-
JDK1.8新特性
-
抽象方法和接口的区别
-
继承和组合
-
进程间的通讯方式
-
判断数是不是二的幂次方
-
两个单链表是否相交
-
topK,要求时间复杂度O(N)
-
把一个数组中的空格移动到最后,不改变相对次序
hr面
-
自己的优点,证明
-
实习经历
-
为什么投大文娱
-
学校问题
美团
一面
-
java的三大特性
-
什么是向上转型
-
hashcode和equals的联系
-
为什么重写equals一定要重写hashcode(回答的一般)
-
hashmap链地址法,在链表上插入时候的具体过程(回答的一般)
-
0,1背包
-
字符集了解么,UTF-8的实现(应该问的是这个,当时很懵逼…)
-
知道什么是符号引用么
-
找最长回文
-
聚集索引,聚集索引和主键索引有什么关系么
-
画出b+索引结构,给了一个表,在姓名字段上建立唯一索引,画图,展示出大体过程
-
复合索引,建立一个索引(a,b,c),问查 a = ? c = ?, b = ? c= ?, b = ? a = ?这三个哪个或者哪几个是有效的
-
Spring有什么了解的(IOC,AOP)
-
java运行时数据结构,各自存了啥都
-
看过什么书,证明一下你看过这本书
二面 + 三面(时间太久了记不太清,就把自己不会的记录一下吧)
-
实现一个死锁
-
设计模式的那八个规范
-
设计一个图书馆管理系统的数据库表
-
真的记不起来了……
快手
一面
-
java基本数据类型,及占用的空间
-
volatile原理,一个volatile变量,我想让他实现i++安全,怎么做
-
lock和synchrnoized的区别
-
数据库你了解多少
-
聚簇索引可以有多个么
-
复合索引
-
聚簇索引和非聚簇索引的原理
-
mysql死锁,怎么解决,如果不要求执行顺序,死锁怎么解决
-
两个栈实现一个队列
-
泛型,定义成员方法和静态方法,接收泛型的参数(这里具体怎么问忘了,好像是这个)
-
spring了解多少
-
ioc和aop原理
-
jdk proxy和cglib proxy 底层(自己主动说的)
-
可检查异常和不可检查异常
-
处理hash冲突的方法有哪些
-
忘了
二面
-
整数转字符串
-
访问网页的过程,具体
-
一个正态分布的数组,怎么求最大值
-
java动态***(***模式,动态***静态***区别,aop底层的***,我说了这些)
-
忘了
贝壳
一面
-
自我介绍
-
死锁条件,自己实现一个死锁的场景
-
Spring,ioc,aop
-
hashmap死循环
-
collection接口都有哪些
-
线程池优点,参数,如果我想实现newSingleThreadPoll,应该怎么配置,构造方法传什么参数
-
callRunsPolicy调用的线程是啥
-
忘了
二面
-
collection集合类
-
hashmap和concurrenthashmap基本原理
-
hashmap和concurrenthashmap的size方法怎么实现的
-
线程池参数,执行过程
-
如果我想让是个线程同时执行任务,怎么实现(CyclicBarrier)
-
写sql,给一个order表,id price date(具体到秒),统计比如2017年3月每天的交易数和交易总额,
-
Spring了解哪些具体说说
-
如果一个service里调用了一个已经开启事务的另一个service,结合spring原理,怎么处理
-
层次打印二叉树
-
项目里自定义缓存有啥有点,比redis,mem***呢
-
忘了
-
学校,家在哪
-
未来三年规划
-
优点
-
有什么想问我的
-
忘了
今天面的太多,脑子记不清楚了,只能想起来这些了
猫眼
一面
-
java内存模型
-
lock和synchronized的区别
-
reentrantlock的实现
-
hashmap和concurrenthashmap
-
数据库索引类型
-
数据库底层用什么实现的
-
复合索引
-
聚簇索引和非聚簇索引的区别
-
索引失效条件,什么时候该建立索引
-
redis的数据结构及底层,跳表
-
一致性hash
-
redis分布式锁
-
spring aop会的说说
-
垃圾回收算法
-
线程安全(阻塞同步,非阻塞同步,无同步)
-
链表倒数第k个节点
-
线程池的工作流程
-
线程池的参数
-
线程池队列的类型,拒绝的方式
-
newSingleThredPool的参数,队列类型,拒绝方式
-
四次挥手
-
acid
-
mysql默认的事务隔离级别
-
忘了
二面
-
一个无头链表 比如 …… -> A -> B -> C,要删除A,怎么删除
-
重复数组中唯一一个不重复元素
-
两个排序数组,求中位数
-
int a; int b; a = 1; b = 0; sout(a,b) swap(a, b) swap(int a, int b) 问输出多少
-
如果把int改成对象呢
-
什么时候垃圾回收
-
可以做GC Root的对象
-
NIO/BIO的理解,会的说说
-
select poll epoll 区别
-
忘了,应该还有好几个题
三面
- 主要是考研表达能力和思考能力
hr
- hr常见问题
小米
一面 + 二面:
-
手写堆排
-
八种基本数据类型,及占的字节数
-
hashcode和equals联系
-
final,finally,finalize的区别
-
String,StringBuffer,StringBuilder区别
-
Java多态你的理解
-
wait和notify什么时候使用,为什么是Object类下的
-
集合类,知道的说一下
-
Hashmap原理,ConcurrentHashMap原理
-
并发包了解多少
-
CyclicBarrior和CountDownLaunch的区别
-
Atomic原子类了解么
-
Redis基本数据结构,及底层实现
-
设计一个定时任务,用Redis
-
数据库索引
-
数据库底层实现,B和B+树区别
-
事务特性
-
隔离级别分别能解决什么问题
-
大概就这些吧,一面的忘了好多
先祝大家都能拿到满意offer!
天道酬勤,共勉💪🏻