星猿哲 二面 70分钟

  1. 自我介绍

  2. 介绍一下项目

  3. 算法怎样加速的, 做了哪些加速

  4. 求职方向和职业规划

  5. 展示一下做过的项目成果

  6. 段错误

  7. 内存泄露

  8. 系统内存不够怎么办 (没思路 瞎答的)

    首先 要看是什么内存不够

    如果是栈空间内存不够的话 查下代码逻辑有没有bug, 例如循环实例化和无限递归, 然后可以在编译器的设置中增大栈空间

    如果是堆内存不够的话 看有没有循环new和内存泄露 换64位 还不够的话 换电脑吧 抠搜的

  9. 怎么少写bug

    1. 勾勒大概的项目框架
    2. unit test 对每个模块进行测试
    3. 重视IDE的警告 比如常出现的 usinged int 和int的强转
    4. 良好的命名规范等编码习惯
  10. gdb调试

    基本的指令了解 但是平时比较依赖IDE封装好的编译工具 windows下使用vstudio linux使用clion

  11. 你用的什么编译器

  12. shared_ptr和unique_ptr

  13. 聊一下四种cast转换

  14. 命名规范

    google规范 平时缩进也会使用clang-format对代码进行调整

  15. opencv了解吗

    常规的传统图像算法基本了解 学过

    平时感觉比较好用的就是opencv二维矩阵插值 还有一些图像简单处理和拼接函数

  16. ==循环展开==了解吗

    循环展开式编译器在预编译阶段对循环操作进行的优化 , 比如一个数据要进行一万次的累加, 那么不如一个循环内累加多次 或者使用将计算分为两个数 分别对奇数和偶数位进行累加 最后合并

    //关闭编译器优化 测试循环展开的优化
    int sum= 0;
    int count= 10000;
    //循环10000次累加
    for(int i= 0;i< count;i++){
         sum+= i;
    }  //0.0000279s
    
    
    for(int i = 0;i < count;i += 2){
     sum += i;
     sum += i+1;
    }  //0.0000159s
    
    int sum1=0,sum2=0;
    for(int i=0;i < count;i+=2){
     sum1 += i;
     sum2 += i+1;
    }
    sum = sum1 + sum2;  //0.0000073s
  17. Unit Test了解吗

  18. ==SSE指令集==

  19. 繁重计算导致界面卡死怎么办

  20. 计算卡死用户怎么终止, 或者黑盒子函数卡死, 怎么终止它

  21. 套接字使用过吗

  22. 还有什么想问的

  23. 刷道题, 返回边长1-m可以构成的三角形种类数 (写的好拉)

面评:

Unit Test,Design Principle会需要加强;有点太依赖Windows环境和VS的IDE,有机会能力可以再提升

#面经#
全部评论
这个还可以看面评吗,咋看的
1
送花
回复
分享
发布于 2022-08-09 10:02
请问笔试都有哪些题型呀?😄
点赞
送花
回复
分享
发布于 2022-08-04 22:47
滴滴
校招火热招聘中
官网直投
我淦,我问的和你一样
点赞
送花
回复
分享
发布于 2022-08-09 09:58
这公司,快跑啊。
点赞
送花
回复
分享
发布于 2022-10-10 10:03 江苏

相关推荐

头像
05-14 12:29
安卓
点赞 评论 收藏
转发
1 14 评论
分享
牛客网
牛客企业服务