摩尔线程_社招面试经验分享

回馈牛客各位网友,希望能帮助各位,岗位是c++软件工程师

一面

一面是上海那边的工程师给我面试,当时的上海仍在封城状态当中

  1. 自我介绍
  2. 问了一个ip地址正则表达式的写法(回答忘了,因为当时开发中写过一个验证邮箱的功能用到的正则匹配,当时是查的,在菜鸟教程上就可以查到)
  3. 问我python,实际上并没有准备python的内容
  4. 然后是传参指针和引用的区别,以及在汇编层面上如何体现
    我当时的回答因该是搞混了传值和传引用,底层其实传指针和传引用是一样的,可以参考
    https://blog.csdn.net/qq_49613557/article/details/119052970
  5. 讲一讲设计模式,
    简单说了一下项目中常用的单例模式,注意要知道用单例模式的常用场景

二面

当时以为一面挂掉了,结果给我发了两次二面邀请我都没看见,后来有一天看邮箱面试链接竟然过期了,赶紧联系hr
二面主要是聊了聊项目经历,捎带着一些综合能力,特意问了我FFT、傅里叶变换,当时我有点懵就想不起来了。。。面试官很nice说这个问题留作作业,下次考(当时比较高兴的是现场就通知我过了)

三面

当时北京也封城了,公司也都在家办公加上可能面试官们比较忙,过了大概一个月左右三面,这回是正经的技术面试:
1.自我介绍
2.c++和C的区别
3.多态的实现,包括细节
4.基类和子类是同一个虚表么
5.多继承情况下,子类有几个虚表
6.如何避免内存泄漏(谈到智能指针)
7.智能指针有几种?原理?什么情况下使用shared_ptr?
8.如何将unique_ptr和容器一起使用(没答好,确实没用过)
9.C++内存空间,各个空间区别
10.如何实现一个类,只能在对空间上创建对象(差点没答出来,大概是构造函数放在private中,然后设计方法GetObj(),函数return new对象)
11.TCP如何保证可靠性传输

1.校验和
发送的数据包的二进制相加然后取反,目的是检验数据在传输过程中是否有变化。如果收到段的校验和有差错,TCP将丢弃这个报文段和不确认接收到此报文段。
2.确认应答 + 序列号
TCP给发送的每一个数据包进行编号,接收方对数据包进行排序,把有序数据传递给应用层。
3.超时重传
当TCP发出一个段后,会启动一个计时器,等待目的端口确认接收到这个报文段。如果不能及时收到一个接收确认,将重传这个报文段。
4.流量控制
TCP连接的每一方都有固定大小的缓冲空间,TCP的接收端只允许发送端发送接收端缓冲区能够接纳的数据。当接收方来不及处理发送方的数据时,能够提示发送方降低发送的速率,防止包丢失。
TCP用的流量控制协议是可变大小的滑动窗口协议。接收方有即时窗口(滑动窗口rwnd),随ACK报文发送。
5.拥塞控制
当网络拥塞时,减少数据的发送。
发送方有拥塞窗口,随ACK报文发送。

12.创建服务器是都有哪些步骤

建立TCP服务器连接的过程中主要通过以下的系统调用序列来获取某些函数,这些系统调用主要包括有:
socket() 创建套接字
bind() 绑定本机端口
connent() 建立连接 (TCP三次握手在调用这个函数时进行)
lisiten() 监听端口
accept() 接收连接
recv()、read()、recvfrom() 数据接收
send()、write()、sendto() 数据发送
close()、shutdown() 关闭套接字 使用close()时,只有当套接字的引用计数为0的时候才会终止连接,而用shutdown()就可以直接关闭连接

13.编程题:中序遍历二叉树,非递归

// 摩尔线程三面代码题目,非递归方式的二叉树中序遍历,核心代码
template<typename T>
struct node
{
    node* right;
    node *left;
    T value;
}

vector<T> TraverseBinaryTree(node* root) {
    vector<T> res;
    stack<node *> s;
    while (root!=nullptr || !s.empty())
    {

        while (root != nullptr)
        {
            s.push(root);
            root = root->left;
        }


        node *n = s.top();
        s.pop();
        res.push_back(n->value);
        root = n->right;
    }
    return res;
}

四面

去了望京的公司现场(建议地铁公交),然后先HR面,再两轮boss面试,主要是聊一些公司和个人情况,以及感兴趣的业务方向
#春招# #面经# #摩尔线程# #摩尔线程智能科技(北京)有限责任公司#

#摩尔线程##面经#
全部评论
想咨询下楼主一面和二面之间间隔了多久
点赞 回复 分享
发布于 2023-05-18 08:58 四川
请问楼主之前有几年工作经验了?谢谢。
点赞 回复 分享
发布于 2023-01-21 22:19 湖南
楼主后面怎么样了?
点赞 回复 分享
发布于 2022-06-29 22:17
lz之前有相关行业经验吗
点赞 回复 分享
发布于 2022-06-19 17:32

相关推荐

不愿透露姓名的神秘牛友
04-08 05:32
点赞 评论 收藏
分享
评论
7
62
分享

创作者周榜

更多
牛客网
牛客企业服务