1. 程式人生 > >程式設計師最好的投資:資料結構

程式設計師最好的投資:資料結構

這周看了Martin的演講,講的是 高效能系統的設計 。他勸我們一定要捨得時間和精力在資料結構上下功夫,因為資料結構會陪伴你的整個職業生涯,長久不息的回報你,是一個程式設計師最好的投資。

為什麼資料結構會有這種收益?

每天都給你節省時間

掌握好資料結構能幫助我們節省時間,並且每天都能省,這是因為我們每天都要和他們打交道。這就像,你每天上班,必須得坐地鐵,但地鐵太繞,開車十分鐘能到的路程,生生被饒了一個半小時,後來你終於學會了開車,開車上班,每天省了一個小時二十分鐘。如果資料結構掌握的不好,Queue裡邊有什麼方法,怎麼用還得看文件,毫無疑問,這繞的太多,浪費了太多時間。

熟能生巧

熟能生巧,一個巧字,如果你有幸遇到了,我磐石般的相信,這將是你作為程式設計師中生命中最為閃亮的時刻。 

學習之道 ,引起我強烈共鳴的一本書,講述了作者Josh如何成長為象棋和太極宗師。我想利用其中的一段小故事來說明這個巧字。

和很多普通象棋學習者不同,Josh學象棋的時候,不是從開局而是從尾局開始,他解釋道,在棋盤上所剩無幾的時候,才能體會到一個棋子所能爆發的最大能量。只有把每個棋子的用法都體會透徹之後,才能催生出妙招。在一次比賽中,當所有的人都認為要和棋的時候,Josh走出了連自己都無法解釋的妙招,這也許就是傳說中的無招勝有招。其實,這並不是一種偶然,而是他積累到了熟能生巧的階段,當知識融會貫通的時候,巧妙的招數,想法便不知不覺由心而生了。

我相信,學習資料結構,也會有同樣的功效。我時常會沉浸於一些程式設計師所創造出的新的資料結構或演算法,不可自拔,感嘆他們的聰明才智。可他們之所以能創造出巧妙的新結構,也是他們在基本的資料結構上投入了大量精力,不僅知道他們的實現原理,怎麼用,而且還知道為什麼要這麼用。

原文地址:http://www.smartcitychina.cn/QianYanJiShu/2017-02/8160.html?ref=myread點選開啟連結