一.數據結構與算法
二叉樹類
- 前中後的非遞歸?
- 層次遍歷,之字遍歷?
- 二叉樹的序列化與反序列化
- 前中,後中遍歷結果恢復二叉樹
- 排序二叉樹的序列化
- 二叉樹的直徑
- 二叉樹的路徑和爲定值的路徑
- 翻轉、複製二叉樹
- 排序二叉樹轉雙向鏈表
- 判斷二叉樹是否相同?判斷一棵樹是不是另一棵樹的子樹?
搜索回溯
- 八皇后,全排列,組合
- 重複數字的排列,重複數字的組合
- 圖的搜索
- A star
概率題
- 用rand7構造rand10
- 輪盤賭
- 三角形內等概論隨機選點
- 等等
動態規劃
- 編輯距離
- 揹包
- LCS
字符串
- 給定字符串是否符合正則表達式XXX
- 給定字符串是否是數字?
- KMP
- 超大數相加
數組、二分、快排系列
- 旋轉數組查找
- 數組中的topk
- 旋轉打印數組
- 行列遞增矩陣查找數字
- 查找出現超過一半的數字
- 查找和爲定值的兩個數
鏈表
- 翻轉鏈表
- 兩個鏈表是否有交點
- 一個鏈表是否有環
- 鏈表的倒數k個節點
- 合併鏈表
- 逆序打印鏈表
排序
- 各種排序的複雜度最優最差平均
- 堆排序topk
- 快排的變化
海量數據題
- 海量日誌的出現最多的10個字符串
- 10億個1-10的數字排序
- trie樹
- hashmap
- 布隆過濾器
- bitmap
- 等等
** 深度學習
模型評估方法
- Accuracy作爲指標有哪些侷限性?
- ROC曲線和PR曲線各是什麼?
- 編程實現AUC的計算,並指出複雜度?
- AUC指標有什麼特點?
- 放縮結果對AUC是否有影響?
餘弦距離與歐式距離有什麼特點?
基本方法
- 如何劃分訓練集?如何選取驗證集?
- 什麼是偏差和方差?
- 什麼是過擬合?深度學習解決過擬合的方法有哪
- 解決欠擬合的方法有哪些?
- 深度模型參數調整的一般方法論?
優化方法
- 簡述瞭解的優化器,發展綜述?
- 常用的損失函數有哪些?分別適用於什麼場景?
- 梯度下降與擬牛頓法的異同?
- L1和L2正則分別有什麼特點?爲何L1稀疏?
深度學習基礎
- 以一層隱層的神經網絡,relu激活,MSE作爲損失函數推導反向傳播
- NN的權重參數能否初始化爲0?
- 什麼是梯度消失和梯度爆炸?
- 常用的激活函數,導數?
- relu的有優點?又有什麼侷限性?他們的系列改進方法是啥?
- sigmoid和tanh爲什麼會導致梯度消失?
- 一個隱層需要多少節點能實現包含n元輸入的任意布爾函數?
- 多個隱層實現包含n元輸入的任意布爾函數,需要多少節點和網絡層?
- dropout爲何能防止過擬合?
- dropout和BN 在前向傳播和方向傳播階段的區別?
CNN
- 給定卷積核的尺寸,特徵圖大小計算方法?
- 網絡容量計算方法
- 共享參數有什麼優點
- 常用的池化操作有哪些?有什麼特點?
- CNN如何用於文本分類?
- resnet提出的背景和核心理論是?
- 空洞卷積是什麼?有什麼應用場景?
RNN
- 簡述RNN,LSTM,GRU的區別和聯繫
- 畫出lstm的結構圖,寫出公式
- RNN的梯度消失問題?如何解決?
- lstm中是否可以用relu作爲激活函數?
- lstm各個門分別使用什麼激活函數?
- 簡述seq2seq模型?
- seq2seq在解碼時候有哪些方法?
- Attention機制是什麼?
***.機器學習
基礎
- 樣本不均衡如何處理?
- 什麼是生成模型什麼是判別模型?
集成學習
- 集成學習的分類?有什麼代表性的模型和方法?
- 如何從偏差和方差的角度解釋bagging和boosting的原理?
- GBDT的原理?和Xgboost的區別聯繫?
- adaboost和gbdt的區別聯繫?
模型
- 手推LR、Kmeans、SVM
- 簡述ridge和lasson的區別和聯繫
- 樹模型如何調參
- 樹模型如何剪枝?
- 是否存一定存在參數,使得SVM的訓練誤差能到0
- 邏輯迴歸如何處理多分類?
- 決策樹有哪些劃分指標?區別與聯繫?
- 簡述SVD和PCA的區別和聯繫?
- 如何使用梯度下降方法進行矩陣分解?
- LDA與PCA的區別與聯繫?
特徵工程
- 常用的特徵篩選方法有哪些?
- 文本如何構造特徵?
- 類別變量如何構造特徵?
- 連續值變量如何構造特徵?
- 哪些模型需要對特徵進行歸一化?
- 什麼是組合特徵?如何處理高維組合特徵?
其他(分方向)
- word2vec的原理,glove的原理,fasttext的原理?
- cbow和skipgram如何選擇?
- 瞭解elmo和bert嗎?簡述與word embedding的聯繫和區別
- 圖像和文本和語音數據各有哪些數據增強方法?
- rcnn、fatse rcnn、fatser rcnn、mask rcnn的原理?
- 介紹resnet和GoogLeNet中的inception module的結構?
- 介紹yolo和ssd ?
- 介紹FM,FFM,deepFM,deepWide.
- 機器翻譯如何解決oov?
- 等等