面试总结——商汤科技自动驾驶研究员
流程
时长大约2个小时,从项目经历入手,到算法知识、手写代码(他之前有问到能不能接受底层一些的东西)。
项目经历
会挑自己感兴趣的项目问,挑刺这种,问的比较细
算法
- 给定一个hash label,怎么实现O(1)时间的setall(value),即把hash label所有现存的key对应的value改为某一个值——应该要从数据结构方面下手解决。
- DP问题:给定一个数组A[],数组中的任意项A[i]代表的是曲调,A[]则为一个乐谱,我们想要弹奏这个曲子,不过有一定要求:弹奏曲子可以用5个手指弹,有B[i]=1~5;如果A[i]>A[i+1],B[i]>B[i+1];如果A[i]<A[i-1],B[i]<B[i-1];如果A[i]=A[i+1],B[i]!=B[i+1]。如果可以用5个手指弹奏这个曲子,则输出任意一个B[],如果不能,输出N
- 优化问题,采用线段拟合数据点,如何拟合一个多线段型的数据?
总体来说是基础算法和优化问题,优化问题是我引出来的。。。
基础算法问题可能和岗位相关吧。
手写代码
给定一个带有重叠数据的有序表,如何快速找到某个X的重复次数,如果X不在表中的话,找出临近的数的重复个数。
总结
总体来说,基础算法题较多,项目也很重要。