商汤一面 Java后端

刚结束,首先说下时常:90分钟,很累,嘴很干。

上来先自我介绍(985前10本科+美硕)
然后聊项目,我的项目比较简单,主要和数据库打交道,但说的也比较详细吧。
技术问题:
1.外键(问了个很奇怪的问题,有join语句为啥还要用外键)数据库的索引,什么时候不用索引,问到了最左匹配原则,不会。
2. 数据库检索优化 我讲了explain,然后问了type的连接类型
3.Springboot和spring;
  • 为什么要用springboot;
  • 优点&特点;我说了bootstrap和application,然后问了加载过程;
  • 可能是我第一个问题答的比较细,所以也没多问
4.问我还擅长什么,我说了collection接口的几个结构,thread线程,锁什么的,于是就开始问了这边的问题
  • ArrayList和LinkedList
  • HashMap(底层,put,resize(),加载因子,为什么转红黑树)
  • 进程和线程的区别,并发和并行,thread的状态(blocked和waiting的区别)
  • 线程转换的消耗,我自己带了点线程池的思想不知道答的对不对
5.tcp三次握手
6.设计模式(重点说了生产者和消费者模式)
7.算法题(无序数组最大的第K个数,先说了priorityqueue时间复杂度O(NlogK),解释了蛮久,估计之前没接触过这个写法,然后问我更好的,幸好之前做过,QuickSelect,O(N)的解法)
leetcode215 medium
8. 做项目中遇到了什么问题,团队开发的问题,怎么解决的。
9. 学了哪些课,学的好的课,想做工程还是算法。
10. 等通知。(没反问)
#Java面试##面经##校招##商汤科技##Java工程师#
全部评论
请问楼主收到通知了吗
点赞 回复 分享
发布于 2020-09-16 11:38

相关推荐

点赞 评论 收藏
分享
字节求职进展汇总
点赞 评论 收藏
分享
1. 实习项目介绍2. 学习成绩怎么样,年级排名?3. 为什么大学学习这个开发方向4. 学习时有没有看一些好的教程或博客5. kotlin调用c++的接口怎么调用6. native声明的函数是怎么对应到c++的函数7. 原生和c++间是怎么传递数据的8. java的引用类型传递给c++时内存管理是怎么样的9. c++层怎么调用java的方法10. Compose的数据驱动是怎么实现的11. 除了mutableStateOf还有其他方式可以定义状态吗12. 如果外部有一个状态传递给子控件,并且让子控件可以更改状态,改怎么做13. 除了lambda回调还有什么方式14. Compose背后对应的真正的视图,什么时候会创建什么时候会销毁,它的内存管理是怎么样的15. 一个Compose组件内有个状态,什么情况下这个状态会变为默认值(什么情况下组件会销毁重建)16. 手撕:计算视图数量手撕是原创题,大概内容是:移动端的视图层级结构是树状的,每个节点都是一个视图。每个视图都有一个isVisible 属性,表示该视图是否可见;视图间有父子关系,当父视图不可见时,其所有子视图也不可见。现给定以下结构体,请实现一个函数,计算叶子视图中可见视图的数量与不可见视图的数量:struct View {bool isVisible;View subviews[];}mid水平,如果算上没见过需要15分钟内当面思考和写出来并解释,可算得上是hard两天后约三面
点赞 评论 收藏
分享
评论
3
18
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务