美团
一面 3.19
- 上来面试官问算法学的怎么样,我说入门水平
- 算法:反转链表
- 算法:N个长度不一的有序数组的TOPK问题
- 使用过那些 java 集合框架
- 说说 HashMap 1.7到1.8所做的优化
- ConcurrentHashMap怎么实现的线程安全,还用过哪些线程安全的map
- JVM了解哪些内容,说下运行时数据区域,栈帧里面存放的什么内容
- 说说分代垃圾回收过程
- 常用的存储引擎,Innodb的优点
- 平常怎么使用索引的,联合索引使用时遵从什么原则
- 了解最左匹配的底层原理吗
- B+树的优点,和红黑树相比为什么使用b+树
- b+树具体怎么存储的,节点中的数据和表怎么对应的
- mysql事务怎么实现的
- 一个大事务会有什么问题?怎么避免出现大事务
- 分布式事务、两阶段提交 本地消息表
- Spring IOC,AOP 的概念和原理
- 微服务有哪些组件,注册中心解决了什么问题
- 负载均衡算法
- 在淘宝、天猫这种大型分布式网站中,有其中一两个页面响应特别满,怎么去解决它?
- 反问
- 对于一些开放性问题答的不好
二面 3.29 (37min)
- java的异常体系
- volatile
- Java8的了解
- MySQL主从复制 除了分离还有其他作用吗
- 图论:怎么表示一个图 怎么判断图是否有环
- 操作系统死锁的概念 怎么解决
- TCP UDP区别
- Http各版本之间的区别
- 算法:最小栈
虾皮
3.21 一面
- 常见的线程池,固定线程数的线程池会回收线程吗,线程池拒绝策略
- JVM,垃圾回收算法与垃圾回收过程,大对象问题,分代年龄问题
- 垃圾标记算法,引用计数,可达性分析,GCRoot
- Redis基本数据类型与底层实现,用哪个Redis数据结构实现优先级队列
- Redis持久化策略。RDB,AOF,优点与缺点
- 知道的排序算法,他们哪个是稳定的
- 数组与链表的优缺点
- 算法一万个数里面找到最大的10个数(TOPK 问题),如何找到一个链表中间的值(快慢指针),如何找到有序数组最中间数字的下标(二分法)
- 布隆过滤器
- 详细说说 MySql 事务隔离级别,读未提交,读已提交,可重复读,串行化
- 共享锁与排它锁,他们的语法是什么
- 索引分类,使用索引的好处,主键索引
- 索引什么情况下会失效
- Redis 数据淘汰策略
- 如果你缓存的数据修改了,怎么保证一致性
- HTTPS和HTTP区别
- 说说你知道的HTTP攻击方式,挑一个详细说一下
- 死锁的条件有哪些,你通常用什么手段解决
- 进程间的通信方式
- 缓存穿透、缓存雪崩、缓存击穿
- 算法:一维转置数组找最小值(二分法)
- 算法:反转链表
- 反问业务情况和表现
3.27 二面 (40min)
- 自我介绍
- synchronized锁升级过程
- 创建线程的方式
- 常用的线程池
- 线程池拒绝策略,你项目里经常使用哪种策略,调用方线程完成任务有什么问题没有?
- 说说你对Netty的认识
- Netty异步编程怎么做的
- 对死锁的认识,怎么发现和解决
- 调用write函数后操作系统层面的执行过程
- 单例模式的实现方式
- Redis在项目里用在什么地方
- 怎么保证缓存和数据库的一致性
- 先删缓存再删数据库会有问题吗,怎么解决
- RPC项目长连接心跳机制
- Netty粘包和拆包怎么解决
- TCP四次挥手time_wait的作用
- MySQL怎么实现的可重复读隔离级别
- 在线教育项目设计了哪些表
- 项目中怎么使用索引的
- 会根据性别建立索引吗
- 树的层序遍历
- Http和Https的区别
- 有哪些对称加密和非对称加密算法,现在比较好的对称加密有哪些?
- 如何判断链表是否有环
- 项目中的难题怎么解决
- 平常逛哪些技术网站
- 会读官方手册吗
- 最近对哪块技术比较感兴趣
- 看过哪些技术类书籍
- 反问
跟谁学
3.24 一面
- 抽象类和接口的区别 Java中你见过的抽象类
- 集合你用过哪些 hashmap的数据结构 ConcurrentHashMap怎么实现线程安全的
- ConcurrentHashMap和hashmap在结构上有区别吗
- 创建线程的方式
- 线程池参数 线程池执行任务的流程
- volatile线程安全吗
- 有50个线程,五个五个执行,五个一起执行完,用JUC里的哪个工具实现
- JVM类加载器
- 双亲委派模型
- Redis在你项目里用在了什么地方
- 为什么想到实现一个RPC框架
- RPC框架中的难点
- 算法题:给你一棵二叉树,请你返回层数最深的叶子节点的和。
输入:root = [1,2,3,4,5,null,6,7,null,null,null,null,8]
输出:15 - 反问
3.26 二面
- 自我介绍
- 为什么只实习了两个月
- 基础知识了解过哪些
- 说一下你对垃圾回收的理解
- TCP为什么三次握手 5G基站和手机四次握手你觉得是为了解决什么问题
- Java中的TreeSet和Redis中的zset分别用了红黑树和跳表,是出于什么考虑
- Linux中搜索日志内容
- Linux查看CPU和内存占用情况, TOP命令中load参数怎么算出来的
- 写一个方法,传入一个int型参数,将这个int型数字进行反序。如传入的数字123,那么返回的就是321,传入的数字是2589,返回的就是9852。要求,不允许使用String,数组,List,map等集合(注意题目中的一些异常情况)。
- 反问
全部评论
(4) 回帖