写点什么

Java 面试手写算法,极客时间数据结构算法地图,Java 岗面试 12 家大厂成功跳槽

用户头像
极客开源
关注
发布于: 刚刚

一面:

  1. hashmap,怎么扩容,怎么处理数据冲突?怎么高效率的实现数据迁移?

  2. Linux 的共享内存如何实现,大概说了一下。

  3. Linux 中的用户模式和内核模式是什么含意?

  4. 在 Java 中 Lock 接口比 synchronized 块的优势是什么?你需要实现一个高效的缓存,它允 许多个用户读,但只允许一个用户写,以此来保持它的完整性,你会怎样去实现它?

  5. socket 网络编程,说一下 TCP 的三次握手和四次挥手

  6. 同步 IO 和异步 IO 的区别?

  7. Java GC 机制?GC Roots 有哪些?

  8. 如和判断一个对象是否存活?(或者 GC 对象的判定方法)

  9. 红黑树讲一下,五个特性,插入删除操作,时间复杂度?

  10. 快排的时间复杂度,最坏情况呢,最好情况呢,堆排序的时间复杂度呢,建堆的复杂度是多少


第一轮非常重要,第一面能通过,后续被录用的可能性就比较高

二面

  1. 自我介绍,主要讲讲做了什么和擅长什么

  2. 设计模式了解哪些?

  3. Java 中什么叫单例设计模式?请用 Java 写出线程安全的单例模式

  4. 什么是元数据?元数据分为哪些类型?包括哪些内容?与 cluster 相关的元数据

  5. AtomicInteger 怎么实现原子修改的?

  6. RabbitMQ 上的一个 queue 中存放的 message 是否有数量限制?

  7. ConcurrentHashMap 在 Java7 和 Java8 中的区别?为什么 Java8 并发效率更好?什么情况下用 HashMap,什么情况用 ConcurrentHashMap?

  8. redis 数据结构?

  9. redis 数据淘汰机制?

  10. Redis 集群方案应该怎么做?都有哪些方案?

三面(约五十分钟)

  1. mysql 实现事务的原理(MVCC)

  2. MySQL 中控制内存分配的全局参数,有哪些?

  3. Redis 有哪些适合的场景?

  4. 有哪些数据库优化方面的经验?MySQL 数据主从同步是如何实现的?

  5. MySQL 索引的实现,innodb 的索引,b+树索引是怎么实现的,为什么用 b+树做索引节点,一个节点存了多少数据,怎么规定大小,与磁盘页对应。

  6. 如果 Redis 有 1 亿个 key,使用 keys 命令是否会影响线上服务?

  7. Redis 的持久化方式,aod 和 rdb,具体怎么实现,追加日志和备份文件,底层实现原理的话知道么?

  8. 遇到最大困难是什么?怎么克服?

  9. 未来的规划是什么?

  10. 你想问我什么?

Java 核心架构进阶知识点

面试成功其实都是必然发生的事情,因为在此之前我做足了充分的准备工作,不单单是纯粹的刷题,更多的还会去刷一些 Java 核心架构进阶知识点,比如:JVM、高并发、多线程、缓存、Spring 相关、分布式、微服务、RPC、网络、设计模式、MQ、Redis、MySQL、设计模式、负载均衡、算法、数据结构、kafka、ZK、集群等。而这些也全被整理浓缩到了一份 pdf——《Java 核心架构进阶知识点整理》,全部都是精华中的精华,本着共赢的心态,好东西自然也是要分享的





内容颇多,篇幅却有限,这就不在过多的介绍了,大家可根据以上截图自行脑补


本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

用户头像

极客开源

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
Java面试手写算法,极客时间数据结构算法地图,Java岗面试12家大厂成功跳槽