看了就要關(guān)注我,喵嗚~
熟悉小灰的小伙伴們都知道,小灰最喜歡利用漫畫的形式,為大家講解各種數(shù)據(jù)結(jié)構(gòu)和算法的知識。那么,程序員學(xué)習(xí)算法究竟有什么用呢?
1.忽悠面試官
是的,學(xué)習(xí)算法的一個相當(dāng)重要的作用,就是把技術(shù)面試官唬住。無論是國內(nèi)的BAT,還是國外的FLAG,但凡大一些的平臺,都會考察候選人的“內(nèi)功”。
2.系統(tǒng)性能優(yōu)化
雖然我們絕大部分的編程工作都僅僅是調(diào)用那些底層已經(jīng)封裝好的接口和SDK,但如果我們了解底層的算法和數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn),我們就可以清楚地認(rèn)識到,在什么場景下適合使用什么樣的底層工具。
就拿最簡單的java集合來說,頻繁在集合中插入和刪除數(shù)據(jù),肯定優(yōu)先選擇LinkedList,頻繁按集合下標(biāo)讀取元素,則優(yōu)先選擇ArrayList。
再比如Mysql的索引,如果要常常按某一列進(jìn)行范圍查詢,那么這一列的索引類型肯定不能選擇Hash類型。
3.訓(xùn)練邏輯思維
算法和邏輯思維是密不可分的,在學(xué)習(xí)算法的過程中,我們的邏輯思維能力也在得到潛移默化的提升。
至于邏輯思維的重要性,不用說大家也很明白了。無論是程序員的工作中,還是工作之外的生活和交流,擁有良好邏輯思維的人都有著得天獨(dú)厚的優(yōu)勢。
聯(lián)系客服