知乎面经总结

机器学习

  • 凸优化
  • linux里查看端口被占用的命令
  • AUC & ROC
  • LR和SVM
  • 手写BP算法,伪代码
  • LR和boost的区别,这次吸取前面的教训,先是细说了LR是什么,怎么推导来的,然后说Boost是什么,干什么用,以Adaboost和GDBT简单举例,最后说二者联系和区别。
  • LR/Boost和朴素贝叶斯的区别
  • xgboost和随机森林
  • 过拟合
  • 过拟合模型,和额外很大量数据,怎么判断这些数据有没有用?想到了采样,但是一时没想起来具体怎么办,最后面试官说,可以采样了用过拟合的模型去跑跑看误差
  • LR和SVM训练目标的区别
  • 知道什么参数范数惩罚?我答L1,L2是主要的,我还在别人的论文里见过Frobenius做参数软共享的。进而问我L1和L2的区别。

    编程

  • 打印所有子集
  • 打印螺旋矩阵
  • 翻转列表前k个
  • 字符串出现第k多的字符
  • 覆盖字符串所有字符的最小子串,Leetcode第76题
  • 字符串子串问题基本都是滑动窗口
  • 找出0-1矩阵里,全1组成的最大矩形面积
  • 矩阵上找路径或者覆盖,直接上DP,我刷过对应的medium难度最大正方形,顺着思路就写了,但是代码写的太丑不简练
  • 问我有一个地理坐标,怎么从我所有的几千万几百万个poi中快速查询到离它最近的几个。我是想答分治、分层索引之类的,但是面试官实际是在问,怎么设计数据结构能最快,怎么把x,y这样的坐标对存成key,没答上让他满意的答案。
  • 链表、字符串、迭代、dfs、堆、树、动态规划