首页 经验

Java后端面试

时间: 2024-10-20 08:52:53

(部分内容来自网络,其真实性存疑,为了避免对您造成误导,请谨慎甄别。)


Java后端面试

一面:(约30分钟)

序数组排序,二分,复杂度

常见排序算法,说下快排过程,时间复杂度

有N个节点的满二叉树的高度。1+logN

单元点最短路的方法,时间复杂度

如何实现关键字输入提示,使用字典树,复杂度多少,有没有其他方案,答哈希,如果是中文呢,分词后建立字典树?

hashmap的实现讲一下吧,讲的很详细了。讲一下红黑树的结构,查询性能等。

Java中的垃圾回收讲一下,讲了分代,gc算法,gc root可达性分析等

JVM的死锁是怎么产生的

线程和进程的区别

进程的通信方式

CPU的执行方式

代码中遇到进程阻塞,进程僵死,内存泄漏等情况怎么排查。通过ps查询状态,分析dump文件等方式排查。

Linux了解么,查看进程状态ps,查看cpu状态 top。查看占用端口的进程号netstat grep

讲一讲JVM的内存泄漏如何排查,出现内存泄漏了处理的思路以及解决方案。

二面:(约30分钟)

快排的时间复杂度,冒泡时间复杂度,快排是否稳定,快排的过程

100w个数,怎么找到前1000个最大的,堆排序,怎么构造,怎么调整,时间复杂度。

先说了一下dfs递归实现。面试官说要优化。说了一下用迪杰斯特拉的思路,说可以。

四辆小车,每辆车加满油可以走一公里,问怎么能让一辆小车走最远。说了好几种方案,面试官引导我优化了一下,但是还是不满意,最后他说跳过。

hashmap的实现,hashtable,concurrenthashmap实现。

MySQL的索引,B+树性质。

Linux的cpu 100怎么排查,top jstack,日志,gui工具

JVM的运行时数据区各个区域干啥的

JVM的三色标记是什么,你怎么理解?

如何进行项目整体的性能优化(可以从JVM ,MySQL以及多线程包括各种方向去聊)

三面:(约30分钟)

十亿个数的集合和10w个数的集合,如何求它们的交集。集合的数字不重复。

十亿和数找到前100个最大的,堆排序,怎么实现,怎么调整。

TCP和UDP的区别,具体使用场景呢。

JVM的垃圾死锁怎么排查?

各种JVM的真实场景性能优化(OOM,GC频繁,CPU飙升)解决思路是什么

对于单例模式,有什么使用场景了,讲了全局id生成器,他问我分布式id生成器怎么实现,说了zk,问我zk了解原理不,讲了zab,然后就没问啦。

JVM的ZGC的指针染色技术有没有了解

G1有没有真实的玩过,设置过哪些参数


上一个 postman工具 文章列表 下一个 圈1到圈50直接复制

最新

工具

© 2019-至今 适观科技

沪ICP备17002269号