3.8做的笔试,3.9下午面试,整体流程比较紧凑,40分钟电话面试,努力回忆一下被问到的题目:
1、自我介绍,了解了一下我在海外的学习经历以及第二年的安排。
2、项目经历,简历上写了两个机器学习的项目,都被问到了,我就花了5-10分钟简要介绍一下。
3、问了一下会不会spring,我说没用过,就没有追问。
4、hashmap,他让我把了解的全说了,我就把jdk1.8里面的相关知识都给说了
5、JVM和垃圾回收:这部分学的不好,只看了垃圾回收的相关内容,都被面试官绕开了,就记得问了一道String存放在哪里,我没答出来。还追问了两个JVM的问题(不了解)
6、多线程:synchronized,可重入锁(当时太紧张了,把几个锁都搞混了,反应了半天,说了句不会,面试完突然反应过来是reentranlock),死锁,threadlocal。
6.1、synchronized加在类和加在方法上的区别,synchronized夹在static 和 普通变量上的区别。(我两道题回答了同一个答案)
7、Java容器:hashmap,concurrenthashmap,底层实现
8、计算机网络:三次握手四次挥手,常用的状态码,https实现加密的方法(不会),get post区别。
9、数据库:介绍了一下B+树,索引的优点(我说了一句能加快检索,他反问你感觉一定能加快吗?我说应该是的吧-_-),还追问了为什么索引检索比直接用值检索高效。
9.1、聚集索引和非聚集索引的区别。
10、java基础:接口和对象的区别,String类介绍,arraylist和linkedlist的区别等
11、反问:问了一下实习的工作模式(一带一),问了一下笔试面试的综合表现(笔试很好,面试成绩要小组一起商量),需要提高的点(要把基础抓牢)
12、问了内存泄漏和内存溢出,堆内存和栈内存溢出的区别。
笔试:3.8线上笔试
(1)有序数组找第k个没有出现的值,当时第一反应是二分搜索和遍历都可以,保险起见写的从头遍历(全过)
(2)工人分配工作问题,找到所有可能结果,写的回溯+剪枝,保存了之后正在处理边界问题时间到了,根据面试官的反馈是过了一部分。
面试问题先后顺序有点乱,大致是这些,整体四十分钟,某一道题打得好或者不好他都没什么太大的反应,全程比较平淡。最后的反馈很中肯。
许愿二面的机会。
全部评论
(0) 回帖