简短的自我介绍后,
那我们来做题吧:
两个数组A、B,A包含B,B中无重复元素,A中有。要求做一个排序,把B排前面,剩余的A排后面但要有序。
思路:先遍历一遍A,把A的信息用字典存好。然后再遍历B,用A的字典依次把B中的元素挑出来排好。剩下的A的元素,用一种排序算法排好放到后面就可以了。
2. 找到出现超过数组(无序)长度一半的数。不需要知道出现多少次,找到这个数就好。要求时复O(n), 空复O(1).
思路:只遍历一遍数组就可以,用两个变量,一个标记变量一个count。遍历到最后,存储的那个标记变量就是要找的超过一半的数。
3. 问了下DFS和BFS 一般是循环的用它们还是递归的用它们?
循环的话,DFS用堆栈,BFS用队列。 不这样的话就递归的用吧。

linux:
问了下shell命令
怎么看进程?(直接top😂….菜是原罪)
怎么看log呢? 几个G的那种log呢?怎么查看你想要的log信息 (看log一般,cat tail 然后 emmm….)

机器学习相关的

  1. 评价指标说一下?
    分类的话,准确率、召回
    我做分割检测,基本就是map转
  2. AUC说一下(TP-FP roc下的面积) 用来评价模型分类性能好坏的
  3. 你说下机器学习的算法,哪个了解多一些?
    SVM很水的扯了一下,它的核函数呢?常用的哪些?高斯函数一般什么时候用?转对偶的时候哪里用到核了?
  4. 说一下softmax 我说了能把无穷压缩到0~1 and blablabla..... . 好接着问:
  5. 为啥要归一化?(消除数据量纲差,可以剔除一些异常值,会使得模型收敛快一些也好一些,计算友好度也会稍微好一些)
  6. 强化学习?Graph Embedding?了解吗?

好吧 他们那边是主要用DL模型做排序和召回 比较推荐的业务需求。

最末:面试官声音好听也温油,但鄙人,菜是原罪。查漏补缺攒人品,大家都加油!!!