每當我想深入學習一下演算法相關的內容時,其中涉及的一些複雜數學知識有時候就會成為“攔路虎”。
我承認自己的數學確實沒學好,但也不至於很糟糕。不過,這種“不上不下”的數學水平,完全無法應對業界 Big Tech 公司(亞馬遜、蘋果、谷歌、Facebook 和微軟)的面試,尤其是面試被問到演算法的一些問題,比如某個演算法的時間和空間複雜度,或者具體的排序和搜尋演算法之間的比較等。
因此,我要學習所有這些知識點。在搜尋和學習過程中,我搜集了幾篇有關程式設計所需的數學知識的文章。
在程式設計方面,最為知名的數學支持者是史蒂夫·耶格(Steve Yegge)。關於程式設計所需的數學,我列舉了以下內容供你參考:
數學筆記
《Math for Programmers》
成為一名駭客需要多少數學
談數學
《數學駭客》
《關於 C 語言實現的斐波那契數示例》
如果你還沒讀過以上內容,那麼你可能會錯過我寫這篇部落格所要表達的意圖。按照史蒂夫·薩米特(Steve Summit)、埃裡克·雷蒙德(Eric Raymond)以及保羅·格雷厄姆(Paul Graham)的觀點,你無需過多地關注數學就可以成為一名出色的程式設計師或者駭客(此處駭客泛指維基百科中對駭客的定義以及埃裡克·雷蒙德(Eric Raymond)對駭客的定義)。
史蒂芬·諾布林(Steven Noble)認為,程式設計師應該懂一些數學;埃文·米勒(Evan Miller)似乎在某種程度上也同意這一觀點。我本人只是出於熱愛而開始踏上程式設計之路的。
從 2009 年以來,我主要使用 C 語言進行程式設計,有時候還會用 C++,並且大部分時候是在 Linux 和 UNIX 環境下工作。我對程式設計充滿熱情,有時候需要使用多種不同的語言進行程式設計,因此我必須學習用不同的思維方式工作。編寫程式碼不是很難,但是,使用特定的程式語言並按照一定的正規化尋找思路且建立模型,才是最難最耗時的工作。
市面上的數學資料我看了不少,不是太難就是太抽象,能深入淺出的確實不多,
《程式設計師的數學基礎課》
就是其中一個。跟著學下來,讓我把演算法和數學模型都串聯起來,還理清了之前的一些盲點,有時間一定二三刷。
這門課非常適合想紮實數學基礎的程式設計師和準程式設計師,課程裡的學習路徑既能讓你鞏固基礎知識,又可以深入理解這些內容對計算機程式設計和演算法究竟意味著什麼。透過“數學概念 - 數學模型 - 資料結構 - 基礎演算法 / 機器學習演算法 - 編碼實現”這幾個關鍵步驟,讓你深刻理解程式設計中的數學。
要把一門學了十幾年的課重新拾起,還是得“耗點功夫”的。一個好老師可以將複雜的問題簡單化,把晦澀的知識點講得通俗易懂,這門課的作者黃申,就是這麼個人。
關於這哥們:
LinkedIn 資深資料科學家和微軟學者,IBM ExtremeBlue 天才計劃成員。
長期專注於大資料相關的搜尋、推薦、自然語言處理、廣告以及使用者精準化領域;
在微軟亞洲研究院、IBM 美國研究院、eBay 中國、1 號店和大潤發飛牛網都曾擔任要職,帶隊完成了若干個公司級的戰略專案;
著有 20 多篇國際論文和 10 多項國際專利;
這種資歷的人開專欄講課,說真的,挺難得。專欄已有近
6 W
人訂閱,截了點評價給你們參考:
這個專欄除了內容過硬,還有 3 點不得不提:
第一,專欄
圖文並茂
,我發現,手繪圖片是真挺好看,數學書裡面可沒有這些,算是給程式設計師的專屬福利了;
第二,每一章末尾,老師都會針對這一講的內容
總結「學習筆記」
,方便大家記憶,可以儲存下來,隨時檢視;
第三,每篇文章老師都會留個
難度適中
的思考題
,並在評論區跟大家耐心互動,解答大家提出的問題。
課程原價 199 元,限時優惠僅需119 元,該門課程也加入超級會員體系,開通會員,能一次性拿下平臺 190 多門課程。
如果把 APP 內的這 190 多門課程和專欄全部加起來,
按照以往單價,總價達到了 3 萬多
。而現在,
一個會員只要 499,一次性拿下課程和專欄。
說實話,這個方案算是很良心的。畢竟 499 可能以前只能買幾個專欄
極客時間這個平臺的課程主要是涉及
IT、產品和職業技能
,非常適合網際網路的同學。
在學習這件事兒上,回報大於投入,衝!