看到不少朋友爲了面試而使勁學各類算法,但其實面試中要考的算法,真的很少,無非就是:排序(快速排序,堆排序,歸併排序),查找(二叉樹查找,二分查找),排列組合,分治/Hash/遞歸/回溯,最難也就考到貪心算法和動態規劃,而後即是基於一些最基本的數據結構(鏈表/數組/字符串/樹/圖)之上的各類操做:仍是查找,比較,或者排序。固然,有些喜歡吹噓本身用戶海量的公司也時常考考海量數據處理方面的面試題(這方面,看我這篇文章足以:教你如何迅速秒殺掉:99%的海量數據處理面試題)。面試
然儘管不少公司都喜歡考算法(暫不論其是不是出於工做之須要),對於求職者來講:基礎(編程語言/基礎知識/軟件工程/操做系統/數據庫/網絡/協議)纔是最重要的,勿爲了面試而算法。對於公司招人來講:儘可能根據實際工做需求來出題/牌,如此,才能找到合適的靠譜人才。算法