要在面试官提出问题之前解决问题

1. 笔试题

1.1 题目

给出一个正整数数组,以及一个目标值target,求数组中可以达到这个target值最短的子序列长度,如果无法达到这个长度,则返回0。下面给出样例:

input: 2 3 1 2 4 3
target: 7
output: 2
input: 1 1 1 1 1 1 1
target: 11
output: 0

1.2 思想

我的想法是:使用一个二维数组存储每两个位置之间和,如下图所示:
小红书搜素算法实习生面试题_面经

然后遍历找出这个sum中值超过target的最短距离即可。

1.3 代码

略了~

1.4 注意点

  • 空间结构用 sum[maxN][maxN] 是否有点儿浪费?
    肯定浪费,其实在比较这些值的过程中,只需要用一个临时记录就可以了。

  • 是否可以及时的跳出计算?
    可以的,因为这里计算有些重复,所以可以采用及时跳出循环的方法降低复杂度。

2. 面试
  • 如何从无标签的语料库中处理数据?比如某个实体之前就没有被标注过,该怎么把它抽取出来?
  • 抽取NER的模型有哪些?NER的论文有哪些?
  • 常见激活函数?常用激活函数?LSTM中使用的激活函数是什么?为什么是它?
  • Batch Normalization 和 Layer Normalization。
  • CRF 能讲讲吗?
  • LSTM 和 RNN的区别是什么?引入到LSTM的原因是什么?

一面就挂了,主要原因应该是很多基础点我都么有答上来(像CRF,BN/LN 这种都是常见且基础的。搁我当面试官,我肯定也不会放水),主要是因为前期根本没有准备面试,就匆匆上岗,个人觉得还是应该充分复习一到两个月,把所有知识点捋一遍,再面试的话,效果应该还不错。等我下篇面经~