MySQL 为什么使用 B+ 树来作索引,对比 B 树它的优点和缺点是什么?
什么是数据库事务,MySQL 为什么会使用 InnoDB 作为默认选项?
简述脏读和幻读的发生场景,InnoDB 是如何解决幻读的??
简述 Redis 持久化中 rdb 以及 aof 方案的优缺点
简述 Redis 中如何防止缓存雪崩和缓存击穿简述 Redis 中如何防止缓存雪崩和缓存击穿
用 Rand7() 实现 Rand10() (Leetcode)
给定一个包含 40亿 个无符号整数的大型文件,使用最多 1G 内存,对此文件进行排序
10亿条数据包括 id,上线时间,下线时间,请绘制每一秒在线人数的曲线图
有序链表插入的时间复杂度是多少?
Hash 表常见操作的时间复杂度是多少?遇到 Hash 冲突是如何解决的?
环形链表 (Leetcode)
用栈实现队列 (Leetcode)
旋转数组 (Leetcode)
最长上升子序列 (Leetcode)
寻找两个正序数组的中位数 (Leetcode)
K 个一组翻转链表 (Leetcode 25)
最长回文子串 (Leetcode)
合并 K 个有序链表 (Leetcode)
二叉树的层序遍历 (Leetcode)
寻找旋转排序数组中的最小值 (Leetcode)
除自身以外数组的乘积 (Leetcode)
2的幂 (Leetcode)
吃掉 N 个橘子的最少天数 (Leetcode)
目标和(Leetcode)
HashMap 与 ConcurrentHashMap 的实现原理是怎样的?ConcurrentHashMap 是如何保证线程安全的?
volatile 关键字解决了什么问题,它的实现原理是什么?
synchronized 关键字底层是如何实现的?它与 Lock 相比优缺点分别是什么?
Java 中垃圾回收机制中如何判断对象需要回收?常见的 GC 回收算法有哪些?
简述 JVM 的内存模型 JVM 内存是如何对应到操作系统内存的?
集合类中的 List 和 Map 的线程安全版本是什么,如何保证线程安全的?
String 类能不能被继承?为什么?
ThreadLocal 实现原理是什么?
实现单例设计模式(懒汉,饿汉)
== 和 equals() 的区别?
Java 线程和操作系统的线程是怎么对应的?Java线程是怎样进行调度的?
JVM 中内存模型是怎样的,简述新生代与老年代的区别?