网易互娱 2020暑期实习 面试回忆

分类

  • 项目
    说了实验室的测评项目,没有什么技术含量,但是面试官还是让我说了一些。

  • 学习方向
    Q:我看你是做安全的,那你能说一些你学习到的网络安全方面的知识吗?
    A:我们实验室的方向不固定,我比较喜欢区块链的一些知识。
    Q:那你能讲一下区块链为什么是安全的吗?
    A:从区块链的结构安全和加密算法作了说明。
    Q:我听你刚才提到了区块链数据的不可篡改性,那为什么我不可以从某一个块开始和同事一起不断地计算哈希以此来修改链条呢?
    A:阐述了51%攻击,从修改哈希的难度和链条的不断延伸解释。(这里其实有一个概念我也没有搞明白,对区块链的修改,这里指公有链,实际上是使用超过51%的算力在某一个块开始延伸一条侧链,使侧链的长度超过主链,由于公有链只承认最长链的特性,这条恶意生成的侧链将被同步为主链)。
    (然后继续讨论为什么51%攻击不可行,感觉跟抗压测试一样。。。我最后说那您可以试一试。。。)

  • 语言相关
    Q:我看你简历上写到了熟悉STL库的使用以及常用数据结构,能说一说你用过那些STL容器吗?
    A:用过vector,array,stack,map,set这些。(本以为要追问的,结果直接跳过了。。。)
    Q:malloc和new有什么区别?mlloc新建的对象可以直接使用吗,为什么?全局变量怎么定义?在其他文件中怎么使用?全局变量的存储位置?程序空间中堆和栈的区别?你刚才说到了自动变量,什么是自动变量?
    A:这里没想到会问到全局变量,所以有点蒙,磕磕巴巴说上来一些。问到自动变量的时候,我说包括函数的参数,后来查了一下,自动变量主要指局部变量,函数的参数当然也属于自动变量。

  • 网络相关
    Q:网络的协议你了解哪一些?
    A:TCP/UDP/HTTP.
    Q:TCP和UDP的区别?TCP的可靠性指什么?
    A:嘴欠说了TCP的可靠性指保证把文件交付,同时满足顺序且正确。
    Q:你刚才说到正确,TCP可以保证传输到的数据未经篡改吗?
    A:说了CRC校验。
    Q:CRC校验可以保证数据是正确的吗?
    A:额。。。不能。
    Q:那你能重新定义TCP的可靠性吗?
    A:保证文件的交付。
    Q:如果接收方没有收到一个已经丢失的包会怎么办?
    A:会不断的向发送方发送丢失包的确认码。
    Q:那如果这个包也丢失呢?无论怎么发就是发不到发送方呢?
    A:当场懵逼,想到了发送窗口,但是不熟没敢说。

  • OS相关
    Q:死锁的产生条件?预防方法?
    A:正常答。
    Q:进程和线程的区别?什么时候用进程,什么时候用线程?如果有足够的CPU核心,选择多线程还是多进程,为什么?
    A:多核的情况没想到过,答了多进程,但是原因错了,可以参考这篇博文
    多线程与多进程

  • 算法相关
    Q:二叉树已知后序中序遍历,求前序遍历。
    A:正常求解。
    Q:平常不会做一些项目吗?有刷一些题吗?
    A:平常还是看书多一些,在刷leetcode的一些题目。

  • 反问环节
    这里就略过了。

  • 时间
    不到50分钟

还有一些题目有点记不清了,大致上的内容就是这些。

体验

其实刚开始的时候聊区块链我感觉我已经没可能了,就是面试官随便聊聊而已,后面问专业知识的时候还是很认真,面试官的水平确实不低,会根据回答问出下一个问题,而且和实际应用联系的很紧密,也会引导你对错误的回答进行一些思考。
面试体验虽然当时比较一般(主要也是因为屁都不会233),但是后来思考还是觉得挺不错的。

发布了26 篇原创文章 · 获赞 16 · 访问量 5855

猜你喜欢

转载自blog.csdn.net/weixin_44826484/article/details/105593790