Skip to content

Latest commit

 

History

History
159 lines (146 loc) · 4.92 KB

美团所有问题汇总.md

File metadata and controls

159 lines (146 loc) · 4.92 KB

美团所有问题汇总

Java

  • 解释一下包装类、装箱与拆箱:2
  • 垃圾回收:6
  • 线程池了解么:12
  • 拒绝策略:3
  • 集合有哪些:1
  • arraylist和linkedlist区别:3
  • hashmap怎么扩容(多线程扩容为什么会死循环),各种过程:9
  • hashset底层:1
  • 如何解决hash冲突:1
  • concurrentHashMap 1.7和1.8:9
  • 接口和抽象类区别:2
  • 新生代:1
  • JVM调优:1
  • 如何判断对象是否应该被回收:5
  • root根包括哪些:5
  • CMS回收过程,优缺点:3
  • G1回收过程:3
  • GC有哪些收集器:3
  • 类加载过程(加载,验证,准备,解析,初始化):1
  • 双亲委派优点:2
  • 线程和进程概念:3
  • synchronized和Lock的区别:3
  • synchronized底层实现:2
  • volatile:6
  • HashMap什么时候用到了红黑树:1
  • 红黑树的特点:1
  • synchronized:1
  • AQS:1
  • SpringIoc和AOP:6
  • Spring用到了什么设计模式:2
  • 单例模式:3
  • 对反射的理解:2
  • 乐观锁和悲观锁:2
  • 偏向锁、轻量级锁和重量级锁:1
  • NIO是什么:2
  • CAS原理:2
  • Springboot对Spring优化的原理:1
  • String里的bean线程安全问题:1
  • String里的bean是单例嘛?:1
  • String里的bean的生命周期:1
  • Java基本类型:2
  • Java运行原理:1
  • JVM内存模型:6
  • Spring里autowired注解和resource注解:1
  • 代码中的异常的处理过程:1
  • String和StringBuffer区别,存储位置是否相同:1
  • hashmap、hashtable 实现:1
  • 公平锁和非公平锁如何实现:1
  • yield sleep结合状态转换讲一下:1
  • TreeMap:1
  • 死锁的四个条件:1
  • Java的四种特性吗?:1
  • ArrayList为什么是快速失败的?:1
  • String、StringBuffer与StringBuilder的区别?分别用在什么场景?:1
  • 多线程的wait和sleep的区别:2
  • 可重入锁:1
  • ThreadLocal了解吗,怎么实现的:2
  • OOM如何分析(通过jmap,jstack等命令):1
  • CopyOnWrite 思想和实现:1
  • 类加载器有哪些:1
  • countdownlatch的底层:1

MySQL

  • ACID:1
  • 聊一下事务:6
  • 事务的隔离:7
  • 索引数据结构:2
  • 为什么用B+树而不用hash和B-Tree:7
  • InooDB和MyISAM的区别:1
  • 回表,联合索引查询:1
  • 最左匹配:3
  • 独占所,共享锁,乐观锁:1
  • mysql分库分表:1
  • sql优化:1
  • 聚集索引和非聚集索引:2
  • 数据库范式:1
  • MySQL慢查询怎么看?:1
  • InnoDB的索引是什么形式的?:1
  • SQL语句的优化器什么的?:1
  • SQL的explain,type什么的?:2
  • Count(*)、count(1)与count(列属性)三者的区别?:1
  • sql查询某个人的所有成绩,两个表,学生表和成绩表:1
  • 问MySQL的innodb的行锁是什么?锁的是什么?:1
  • 一个学生表,选出成绩排名第三的学生和成绩分数第三的学生,怎么写sql?:1
  • 姓名课程成绩,找出没有不及格课程的学生(group by having min >= 60)

Redis

  • Redis使用场景:1
  • Redis线程模型?多路复用讲一下,为什么redis很快:1
  • 分布式锁有哪些?:1
  • Redis的五种数据类型:2
  • Redis跳表:1
  • 集群:2
  • 持久化:2
  • setnx指令:1
  • 数据库和缓存的读一致性?:1
  • 数据库和缓存的写一致性?:1
  • Redis都说是单线程的,具体是怎么处理请求的:1
  • Redis实现过分布式锁,那有别的方案可以实现分布式锁吗:1

网络

  • 三次握手:3
  • 滑动控制:1
  • 七层模型:1
  • 四次挥手:3
  • 为什么TCP能保证不丢失(滑动窗口,拥塞控制):1
  • HTTP和HTTPS的区别:1
  • GET和POST区别:2
  • 一次url请求的过程:3
  • cookie和session区别,怎么用:1
  • https实现过程:2
  • 对称加密和非对称加密?:1
  • TCP和UDP的区别:1
  • DNS解析过程

其他

  • 操作系统里进程状态及转换:1
  • 4G内存读取10G日志,统计其中出现频次最高的十个word,如何实现,如何使得速度更快:1
  • 5个赛道25匹马,选出最快的5个:1

代码

  • 二分查找:4
  • 反转链表:2
  • 反转字符串:1
  • 顺时针填充数组:1
  • 字符串去重:3
  • 查找二进制数据里出现1的次数:1
  • 常用的排序算法哪些,最优时间复杂度,最差时间复杂度,平均时间复杂度,空间复杂度:1
  • 二叉树的两个最远节点的距离:1
  • 字符串转为数字:2
  • 链表环路:1
  • 爬楼梯:1
  • 两个链表的第一个公共节点:1
  • 实现一个阻塞队列:1
  • 两个栈实现队列:1
  • 约瑟夫环问题:1
  • BlockingQueue的生产者和消费者模型:1
  • 一个数组找出出现次数最多的一个数,如果多个数出现的次数相同则输出第一个:1
  • 栈里的数降序排序,额外空间只能再用一个栈:1
  • 链表相加:1

RocketMQ

  • 数据存在哪里
  • 会不会丢失数据
  • 幂等操作
  • 生产者提交数据的流程
  • 如何实现高并发消费,分片

MyBatis

  • #$符号有什么区别
  • ORM框架的作用