网络远程面试,开了摄像头,见到了亲切的戴着口罩的面试官hhh
早上十点开始面试,面了两轮技术面,到十二点十分结束,等待下午最后一轮的主管面
流程
两轮技术面的流程差不多,都是自我介绍+基础知识+算法编写
- 自我介绍
- 介绍自己的项目,科研经历和实习经历,重点项目面试官还是很喜欢问的
- 问技术问题:进程线程,分页分段,java函数式编程,tcp/udp都是一些非常基础的问题
- 现场编码
算法编写题目
-
编码过程面试官也不催,就是看我安安静静地写,编程语言也没限制,用自己熟悉的即可,记得提前配置环境
-
第一轮技术面是实现LRU置换算法,面试官给了题目和要求,还很认真的解释了要求,但是忘了截图了。。具体我的实现是这个样子,大概十五分钟
class LRUcache:
def __init__(self,length = 10):
self.dic = {
}
self.keys_queue = []
self.max_length = length
def put(self,key = None,value = None):
if key is None or value is None:
raise ValueError("key or value cannot be None")
self.dic[key] = value
self.update_key(key)
def get(self,key = None):
if key is None:
raise ValueError("Error: key cannot be none"