我曾經面試過很多一線互聯網大公司,確實這一類的公司面試的時候比較注重算法(不過自己的經驗和朋友的說法來看,工作中從來都用不到)!
問的算法方面的知識也不會很深,比如之前在一家公司,要求我寫一個二分法查找的偽代碼,就寫個思路即可,還有的要求說出二叉搜索樹,紅黑樹,還有諸如冒泡排序,快速排序,插入排序等方式的性能以及如何選擇最優的方式!
其實如果不是跟大數據,搜索,統計這些息息相關的工作崗位,問的算法都比較簡單,就看你有沒有了解過基本算法和解決思路!
其實,在面試過程中數據結構問的更多一些,比如說hashMap的內部結構,如何擴容,擴容時候的線程安全問題,JAVA8中為什么加入紅黑樹?arraylist,linkedlist區別與應用場景?等等這種JAVA中常用的數據結構的深入理解!
所以,如果您要面試的話,我的建議是,基本的算法,比如二分查找,遞歸,基本的排序算法等掌握其思路,寫出偽代碼,基本的數據結構掌握其底層源碼和優缺點!基本算法和數據結構這一塊就OK了!