网易2021校招笔试-C++开发工程师(正式第一批)

时长:120分钟 总分:100分

132浏览 0人已完成答题

题型介绍
题型 填空题 简答题
数量 4 1
1.
树上摘樱桃
问题详情

有一棵二叉树,树上的叶子节点定义为“樱桃”。现在需要找出树上有多少个满足如下子结构的“樱桃”串,即一串上刚好有两颗“樱桃”。

比如如下的一棵树,红框标示的有两个符合要求的结构,答案就是2



又比如下面的这颗树,没有任何符合要求的子结构,则答案是0


2.
组合幸运数字
问题详情

小易的幸运数字是7,现有一个整数数组 nums,请你找出并返回能被七整除的子集合的最大和,如果找不到则返回-1。
3.
特殊的编辑距离
问题详情

在自然语言处理的过程中,经常需要判断一个字符串和另外一个字符串之间的一个相似程度,其中常见的一个指标就是编辑距离,即一个字符串最少经过多少次“增删改”某个字符,可以变为另一个字符串。

如“abc”与“ac”的编辑距离为1,是因为在a和c中间“增加”一个b即可。如“abcd”与“axc”的编辑距离为2,是因为把“abcd”的b修改为x,然后再删除d即可,共2次操作。

但是在某种场景中,编辑距离定义为词粒度的。比如句子A “I am a coder”与句子B “hello ,  I am a singer”之间,对于句子A可以通过添加"hello"和符号",",  并替换"coder"为"singer",共3个操作得到句子B。所以可得其基本的编辑距离为3。

在本题中,特别地,对于部分词,比如标点符号“, ”、"hello"对于句子语义的影响并不重要,这部分称之为停用词,这部分可以在匹配的过程中被跳过。比如对于句子A “I am a coder”与句子B “hello ,  I am a singer”,如果加入了停用词的影响,那编辑距离从3降到1。

所以目标是可以有选择性地跳过停用词的情况下,问最小的编辑距离是多少。
4.
特征排列组合
问题详情

机器学习问题中,经常有很多抽取的特征,而特征之间往往可以通过组合,得到更抽象有用的特征。比如性别特征-(男,女),和职业特征(程序员,美工,策划),可以交叉出(男-程序员,男-美工,男-策划,女-程序员,女-美工,女-策划),更抽象的特征可以表达出一些复合的语义和对数据的刻画,往往在模型中会获得意想不到的作用。

本题需要你也开发一个类似的功能,将输入的各种特征进行自动的排列组合。
5.
什么是大小端模式?如何判断某一个系统是大端模式还是小端模式?2.请简述C+...
问题详情

什么是大小端模式?如何判断某一个系统是大端模式还是小端模式? 2. 请简述C++中的虚函数的实现机制。(可以举例说明)