商汤java开发面经
7-9 商汤一面
基础知识 + 项目
java基础
- java常用集合介绍
- linkedList 、 arrayList 、 hash map原理;hash map是不是线程安全的 ?
- 引出hash table concurrent hash map -1.7 1.8
- jvm 内存模型 垃圾收集 设置垃圾收集后 会立即执行吗?
- out of memory产生的情况和原因
- 如何对list中的object进行排序
数据库
- 数据库慢查询优化办法
- 索引的使用情况 性别 适合用作索引吗 什么类型适合索引
多线程
- 新建线程的两种方法:
- thread
- runnable
- 线程代码阅读
项目
- 实习期间所做的项目 用到的技术或消息中间件
- sofa = spring + 微服务
- msgBroker 消息中间件
7-14 商汤二面
- 字符串搜索树项目细问
- 对搜索结果进行排序 选出top 10 (看一下现在的搜索引擎是如何实现的)
- 采用机器学习的方式 智能的选出top k
- jdk 1.8中采用的垃圾收集器是什么:Parallel Scavenge和Parallel Old
- java垃圾收集器G1 CMS详细介绍
- java线程池的介绍
7-21 商汤三面
- 项目
- 地图后端开发
- 图片自适应缩放
- 字典树 数据库 分页算法
- 路径: dijikesila算法
- 地图后端开发
- java基础
- hashmap 线程安全的hashmap
- 线程池哪几种 存在意义 cas
- jvm垃圾回收 内存模型
- 一个类的加载过程 生命周期
- 数据库 联合索引 分页 表锁 行锁
- 互联网
- redis
- 消息中间件
- spring boot
- 分布式锁
- 数据库锁