面試準備

編程基礎:html

(關注代碼的時間複雜度空間複雜度)java

進程間通訊方式python

線程和進程mysql

線程的狀態轉化程序員

數組和鏈表的區別面試

數據結構學過哪些,回答了數組,鏈表,而後問他們各自的特色以及適合在什麼場景下應用,以及他們的時間複雜度redis

死鎖產生的條件, 以及如何避免死鎖,銀行家算法,產生死鎖後如何解決算法

java內存模型java內存區域sql

java中建立類的實例有幾種方法數據庫

死鎖的緣由,條件,怎麼解決

多線程的理解,如何保證線程安全

是否瞭解synchronized及lock,簡述下使用場景及其區別(比較通用的解決線程安全的方法)

synchronized和reetrantlock鎖

多線程深刻的理解

線程進程

線程安全

static關鍵字

手撕一個單例模式

會那些設計模式,單例模式,工廠模式,代理模式,裝飾器模式

Java中的框架

jvm

python和Java的內存管理

python中的list和tuple

python多(threadign/thread) lvs四種模式

Hadoop的相關知識

有序數組排序,二分查找,複雜度

有N個節點的滿二叉樹的高度。(1+LogN)  相似的 有k層的滿二叉樹有多少個節點(2*K-1)

hashMap與hashTable的區別

hashset和hashmap的區別,haspmap的底層實現put操做,擴容機制,

currenthashmap如何解決線程安全

Java集合類都有哪些,詳細說明並介紹特色

說一說Java的集合類

LinkedList與ArrayList的區別

1000個節點,插入,查找,刪除的頻率差很少,用LinkedList仍是ArrayList

Spring的依賴注入是怎麼實現的

熟悉HashMap嗎?是線程安全的嗎?多線程訪問有什麼問題?仔細說一下

知道線程安全的Map嗎?怎麼實現的?

== 操做比較的是什麼?與equals有什麼不一樣?

Integer的 == 與 equals操做

String的 == 操做

對鏈表排序(歸併排序,快速排序)

實現LRU

垃圾回收

網絡編程中異步操做,NIO,Netty

HashMap源碼,是否線程安全,爲何

10G的文件,2G的內存,文件中每一行都是一個酒店名,如何統計出前二十的酒店

HashMap的容量爲何是2的n次方

B-Tree與B+Tree的區別

爲何要用B+Tree來做爲索引底層的數據結構(B+tree被大量用於數據庫的索引中)

會那些設計模式,單例模式,工廠模式,代理模式,裝飾器模式

JVM內存分區

string ,stringbuild,stringbuffer區別,string內部結構

穩定的和不穩定的排序

快速排序的思想講一下,手寫快排,給個數組,模擬快排的過程

hash的用處 怎麼解決hash衝突

緩存池咱們不少地方都要用到,如何實現緩存池(隊列和map)

java內存的空間分佈

jvm的垃圾回收機制,,讓比較了CMS和G1的區別,還提了「若是是大數據量的狀況下使用什麼回收器比較好?「G1是針對服務器的,而且是分塊整理的固然選擇G1。最後問了一個問題「若是jvm一直在作FullGC怎麼辦?「這個我開始反應就回答了設置jvm的堆區最大值

hashmap的底層結構。如何擴容,併發怎麼解決,concurrentHashMap如何實現高效讀寫(分區+鎖技術),最後竟然問了句:爲何負載因子是0.75

Hashmap爲何容量是2的冪次,什麼是負載因子

HashMap和HashTable有什麼區別

Key-Value存儲原理

「有什麼難點?」「項目中遇到過哪些問題?」

Java(int和Integer的區別)

Java中抽象類與接口的區別

Java中的集合的底層實現(相似還有HashMap HashSet)

問了map以及hashmap的特色,map實現的數據結構應該是什麼

hashmap的實現講一下吧,講的很詳細了。講一下紅黑樹的結構,查詢性能等。

Java回收機制

Java中的垃圾回收講一下,講了分代,gc算法,gc root可達性分析等

Java內存泄漏

重載與重寫的區別

瞭解 redis 源碼麼

瞭解 redis 集羣麼

說一下java裏面的Integer.valueOf()這個函數?

HashMap全面的面試題

往 set 裏面 put 一個學生對象,而後將這個學生對象的學號改了,再 put 進去,能夠放 進 set 麼?並講出爲何

n長的數組放入n+1個數,不能重複,找出缺失的那個數(不知道是否是連續的數)

1到n中減小了一個數,順序被打亂,找出缺失的數

說下對this的理解,super關鍵字和this的區別

反射

泛型

死鎖是什麼呢,怎麼解決死鎖

爲何負載均衡,怎麼實現負載均衡

Java與C++最大的區別

1G數據怎麼排序

怎麼判斷鏈表有環,怎麼優化

範圍1到1000的數,本來有1000個,互不重複,現多出來1個重複的數,怎麼找到他,統計次數,太慢,求和相減。

N個糖果,每次只能取1個到6個,不能不取,你先取,請問是否有必勝策略,怎麼取。

代碼:(單例模式)

介紹一下你知道的排序算法以及平均時間複雜度,最壞最好狀況

常見的數據結構要掌握,基礎的代碼會手寫(快排、冒泡、歸併排序、二分查找、二叉樹的遍歷、二叉樹增刪改查)

算法:如何判斷一個樹是否是另外一顆樹的子樹

算法:給定一個數字,一個數組,找出數組中相加等於這兩個數的和,不能用數據結構

算法:找出兩個數組相等的數,不能用其餘數據結構

代碼:數組去重

代碼:網易:反轉字符串、反轉反轉

代碼:二叉樹前序遍歷中序遍歷後序遍歷(遞歸非遞歸)

代碼:從int數組中找出和最大的連續子串

代碼:判斷數組是否能夠首尾相連成環路

代碼:從數組中找出兩個相加等於n的下標

代碼:一個數的個位十位百位相加,判斷結果的個位是否是3

代碼:全排列

代碼:從A到I

代碼:找出一組數中最大的數

代碼:找出數組中不重複的數

代碼:二叉樹的層序遍歷

代碼:二分查找

兩條鏈表求第一個公共節點

寫一個兩個有序鏈表合併成一個有序鏈表

鏈表找環狀入口

鏈表面試題集錦

而後問了我一些設計模式,我講了單例,工廠和裝飾者模式,java手寫了單例

快排的時間複雜度,冒泡時間複雜度,快排是否穩定,快排的過程

100w個數,怎麼找到前1000個最大的,堆排序,怎麼構造,怎麼調整,時間複雜度。

編程題:層序遍歷二叉樹

編程題:給定一個字符串列表(長度爲n),給定一個滑動窗長度L,求滑動窗裏邊最多有多少個不一樣字符。(要求時間複雜度O(n),空間複雜度O(1))

一個矩陣,從左上角到右下角,每一個位置有一個權值。能夠上下左右走,到達右下角的路徑權值最小怎麼走。(先說了一下dfs遞歸實現。面試官說要優化。說了一下用迪傑斯特拉的思路,說能夠)

十億個數的集合和10w個數的集合,如何求他們的交集(面試官說對較小的數作hash,而後便利大數組便可)

十億個數找出前100個最大的

常見數據結構與操做(線性表、隊列、字符串、樹、圖)

常見算法(排序、查找、動態規劃、遞歸、回溯)

數據庫:

數據庫的優化

怎麼優化數據庫

SQL(多表查詢、左連接和右連接的區別)

SQL(索引、多表查詢)

寫一個SQL語句

SQL(寫語句,top,count,group,by,order by,select)

group by 與 order by 的區別

介紹MySQL索引、彙集索引等

MySQL的索引,B+樹性質。

mysql 數據庫的引擎和區別(innoDB MyISAM)

數據庫的索引和優化

說一下數據庫事務隔離等級?

基本SQL語句

MySQL存儲架構

LVS四種模式實現以及原理

MySQL存儲引擎

MySQL幾個存儲引擎的特色,區別

Linux:

Linux(查看一個文檔,顯示文檔的最後五條數據)

Linux(cd,cd-,mkdir,vi,netstat)

Linux的cpu 100怎麼排查,top jstack,日誌,gui工具

Linux大文件怎麼查某一行的內容。

常見的Linux命令

Linux基礎

Linux,查找磁盤上最大的文件的命令

Linux中的文件處理

計算機網絡:

UDP TCP的區別

三次握手和四次握手和UDPTCP使用場景

詳細講講擁塞控制

DNS劫持的原理

路由表中存的是什麼

TCP的擁塞控制

http中的get和post請求的區別

怎麼確認post請求發送完畢

網絡(get和post的區別,七層協議分別是什麼,應用層的協議)

七層網絡模型

計算機網絡熟悉嘛?說一說七層模型以及每一層模型的具體內容

TCP的三次握手,四次揮手,以及每一個時刻客戶端服務端的狀態是什麼

TCP的四次揮手,time wait狀態有什麼意義。

TCP和UDP的核心區別在哪,講了滑動窗口保證可靠有序傳輸,UDP不可靠。TCP須要鏈接而UDP不須要。

10g文件,只有2g內存,怎麼查找文件中指定的字符串出現位置。MapReduce分割文件處理。 他說能夠用cat | grep 管道處理

怎麼查看佔用了端口號的程序的可執行文件的位置

怎麼統計日誌文件中重複數量最多的前十行

osi七層網絡模型,五層網絡模型,每次層分別有哪些協議

tcp擁塞控制機制,慢開始,擁塞避免,快重傳,快恢復

tcp三次握手,四次揮手過程以及三次握手四次揮手的緣由,timewait的原型,icmp屬於

cdn

tcp的慢啓動

tcp的time_wait

TIME_WAIT多了有什麼問題?

TCP的三次握手和四次揮手?仔細說說

爲何要四次揮手?三次揮手不行嗎?

TCP的三次握手和四次揮手?仔細說說
 

機器學習算法;

算法提問(推公式,介紹原理),數據結構提問(寫代碼,介紹原理)

簡歷上的項目必定要熟悉:項目背景,項目方案、項目成果。項目中的技術點要熟悉

機器學習模型原理和機器學習常見的問題(正負樣本不均衡)

常見的機器學習模型要會推公式

邏輯迴歸推導

最大似然及交叉熵

正則及各自優劣

評價指標及含義

kmeans的計算過程及複雜度

bp推導

lstm網絡參數數量計算公式的推導

XGBoost中對GBDT有哪些優化

Word2Vec講一下

幾種模型(SVM、lr、gdbt、em)的原理及公式推導

rf、gdbt的區別

決策樹處理連續值的方法

特徵選擇的方法

過擬合問題的解決

反向傳播原理

PCA原理

PCA的實現過程(步驟)

PCA與SVD

SIFT原理

梯度消失的緣由及解決方法

k-means的原理,優缺點以及改進

常見分類模型(SVM、決策樹、貝葉斯等)的優缺點、使用場景、如何選擇

SVM爲啥要引入拉格朗日乘子法

梯度降低的優缺點 梯度降低、隨機梯度降低、批量梯度降低

牛頓法 擬牛頓法

牛頓法和梯度降低法的聯繫

em與kmeans的關係

詳細解釋CNN的原理

海量的item算文本類似度的優化方法

L1L2的區別以及如何解決L1求導困難

解釋world2vec的原理以及哈夫曼樹的改進

模型的迭代訓練中怎麼評估效果

LDA的原理

常見的機器學習模型(線性迴歸、邏輯迴歸、SVM、感知機、KNN、K-means、EM等)

常見的機器學習理論(過擬合、交叉驗證、模型選擇、模型融合)

常見的深度學習模型(CNN、RNN)

SIFT原理

SVM核函數的做用

SVM,線性迴歸和邏輯迴歸的原理及區別

邏輯迴歸實現多分類

Adaboost算法

經過簡單示例,詳細解釋ROC曲線,要求給出必要的公式推導。

給出LR(邏輯迴歸)算法的cost function公式的推導過程。

目標檢測時,輸入的是視頻時,如何進行檢測?視頻中有不少無用的幀(不包含要檢測的目標等)-->人工分割視頻、每隔必定數量的幀進行檢測

混合高斯模型(GMM)是怎麼樣的?à原理和公式

梯度降低:爲何多元函數在負梯度方向降低最快?

經常使用的聚類方法有哪些,簡述其原理?分級聚類,K-means聚類

Sigmoid激活函數爲何會出現梯度消失?Sigmoid函數導數的最大值出如今哪一個值?-->(x=0處)  ReLU激活函數爲何能解決梯度消失問題?

Softmax是和什麼loss function配合使用?-->多項式迴歸loss   該loss function的公式?

經常使用的顏色空間有哪些?各有什麼特徵?

隨機森裏的原理分析

隨機森林的隨機性體如今哪裏?

經常使用的圖像分割算法有哪些,各有什麼優缺點?

圖像的像素數和分辨率有什麼區別?

SVM的參數c和g(cost和gamma)

SVM的參數c

視覺:

canny邊緣檢測算法的過程

經常使用的邊緣檢測算法:canny算子、Sobel算子

經常使用的局部特徵和全局特徵

顏色識別:

  • RGB空間範圍分別是0-255,RGB空間白色全爲255 黑色全爲0,轉化爲HSV空間,識別顏色
  • HSV空間,H:0-180   S:0-255   V:0-255  在HSV空間查表獲得顏色

爲何不在RGB中設置範圍查找顏色,而是在HSV中

  • RGB空間並不能很好地反映出物體具體的顏色信息 , 而相對於RGB空間,HSV空間可以很是直觀的表達色彩的明暗,色調,以及鮮豔程度,方便進行顏色之間的對比,好比紅色在HSV空間中H維度的範圍爲0~10和160~180 你跟我說在RGB中它的範圍是什麼呢?

機器學習、計算機視覺面經整理

有用的文章

啊啊

綜合能力面試:

優缺點

什麼是有效的溝通

怎麼與人合做的

怎麼證實本身的學習能力強

最有成就的事

遇到過什麼挫折

平時喜歡幹什麼

用三個詞形容本身

看什麼書,重點講一本

問了一下最近看什麼書,何時開始寫博客的

環形商場裏又不少商家,商家的錢實現不知道,讓你去搶錢,不能連續搶兩家,怎麼保證搶錢最多

若是你帶領一個團隊作一款產品,你想作什麼,爲何

假設有個M*N的方格,從左下角走到右上角每次只能向右或向上,有多少種走法,若是中間有若干格子不能走,又有多少種走法

問面試官的問題:

這個問題會暴露你的關注點,最好能讓面試官知道你對將來工做細節的關注,詢問面試官提到的公司的事工做的事,而不是薪酬福利。或者提早準備一些通用問題

額外的:
真正大佬的姿態是這樣的,您隨意出,沒我不會的
引導面試官向本身擅長的方向提問,把面試轉化爲對話聊天的形式
程序員沒有羣面,偏國企的有羣面
對每一個知識點,最好說出本身的理解
Java和python都要會
項目細節必定要很熟悉
相關文章
相關標籤/搜索