2022春季暑期实习-摩尔线程一面
时间
2022.4.7
自我介绍
跟上个月一样,还没改动,后面感觉也不太重要,就是开场白一样的东西。
科研&项目
首先是让我介绍论文,问了提前退出机制和知识蒸馏的区别,问论文的创新点在哪(说实话我论文很水,没想到嵌入式公司还挺在意这些的),后面还问你这个方向大家都是这么搞的吗,看来觉得我这个方向思路不太有趣。然后问我之前在嵌入式设备方面搞的啥,如何将模型迁移到上面,答直接python迁移,面试官遂然无趣。
基础知识
后面问了我一堆深度学习的东西,tensorflow的知识,graph怎么用,了解哪些模型,我都不怎么了解哎。然后问了gdb如何设置断点,makefile如何调用动态库(这个忘了),虚函数定义,STL讲讲自己知道的容器,map的底层实现(直接说红黑树)。 后来问着问着,两个面试官都没了兴致,直接开始做题吧。
编程
第一道是54.螺旋矩阵
class Solution {
public:
vector<int> spiralOrder(vector<vector<int>>& matrix) {
int m = matrix.size(), n = matrix[0].size();
int upper_bound = 0, lower_bound = m-1;
int left_bound = 0, right_bound = n-1;
vector<int> res;
while(res.size() < m*n){
if(upper_bound <= lower_bound){
for(int j=left_bound; j<=right_bound; j++){
res.push_back(matrix[upper_bound][j]);
}
upper_bound++;
}
if(left_bound <= right_bound){
for(int i=upper_bound; i<=lower_bound; i++){
res.push_back(matrix[i][right_bound]);
}
right_bound--;
}
if(upper_bound <= lower_bound){
for(int j=right_bound; j>= left_bound; j--){
res.push_back(matrix[lower_bound][j]);
}
lower_bound--;
}
if(left_bound <= right_bound){
for(int i=lower_bound; i>=upper_bound; i--){
res.push_back(matrix[i][left_bound]);
}
left_bound++;
}
}
return res;
}
};
第二道意思大概是 2^M-1长的数组,然后每个数字范围是[0,2^M-1],乱序数组,找到其中少的那个数字。
知乎上的答案:把这组数依次异或,然后再跟1到10亿依次异或,得到的数就是缺的数。
最后反问
问了这个岗位在公司主要干啥的。


美团公司福利 3017人发布