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亿依次异或,得到的数就是缺的数。

最后反问

问了这个岗位在公司主要干啥的。

全部评论

相关推荐

12-13 20:26
浙江大学 Java
淬月星辉:把浙大的校名加大加粗,把校徽再贴出来,就OK了
点赞 评论 收藏
分享
评论
3
8
分享

创作者周榜

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