回覆列表
  • 1 # EmacserVimer

    這裡假設你在.NET主要開發語言是C#!

    這個問題其實容易引起誤解,其實很少有演算法書籍、以及資料結構書籍是C#來描述的,或者說大部分的資料結構的書籍、主流演算法書籍基本上都是用C/C++/Java虛擬碼描述。

    學習演算法、資料結構本質上是學習思想,所以用什麼語言來實現,尤其是用什麼語言的虛擬碼來實現其實並不重要,相信你如果能掌握好一門程式語言,這對你並不是難事。

    資料結構:一套影片、一本書

    《Data Structures and Algorithm Analysis in C》一第2版,這本書應該算是我用過的資料結構的書裡面最好的了,這本書原書被評為20世紀最頂尖的30本計算機科學著作,目前被全世界超過500所知名高校作為教材,當之無愧的暢銷書,同時也是好評如潮,並且這本書可以選擇多種語言的虛擬碼描述。

    一套影片,這套影片是我看過的國內裡面做得最好的課程,這套影片是中科大朱明教授的資料結構課程,在網上有影片,貌似能找到全集,感興趣的同學可以自己的搜尋,如果沒找到全集可以私信我。這個影片已經比較老了,但是我覺得還是很不錯的影片,算是國內比較有水平的課程了,主要學習思想。

    對於清華大學嚴蔚敏教授的《資料結構》這本書,我只能說在國內已經算是不錯的教材了,但說實話我覺得可能我不太喜歡這種風格,再就是我覺得嚴蔚敏老師的資料結構pascal版的比後來的C語言版的要寫得更好一些。

    演算法:推薦兩本書

    其中一本是MIT麻省理工學院的《演算法導論》,公認的經典,演算法非常全,雖然是導論,但是部頭還是比較大的,而且內容比較多。基本上主要的演算法都有了,非常全,更像是一本工具書,習題也很豐富,你也可以直接去網上找實現。

    第二本是我推薦所有人都可以看的,這本書的作者是Robert Sedgewick是斯坦福大學博士,導師正是大名鼎鼎的Donald E. Knuth(當然不推薦大家去看老爺子的《計算機程式設計藝術》這本書,跟物理界相對論、數學界的算術探究一樣,難度很大)。這本書的好處是有難度低,你可以選擇Java 描述版本,這本書最重要的幾個特點是,第一是不累贅,不像演算法導論那麼面面俱到,但是你常用的演算法這裡面都有了,第二是寫得好,語言駕馭能力強,並且深入淺出,這一點作者跟自己的老師一樣,文字駕馭功底深厚。

    大概就是這樣吧,當然這只是我的一家之言,還是要你用得到才行。演算法和資料結構對於成為一個程式設計師幫助不大,但是對於成為一個優秀的程式設計師卻非常重要,推薦每個程式設計師都能花一定的時間和精力去學習。

  • 2 # 搞笑影片一起看

    資料結構和演算法是程式設計思想,與程式語言關係不大。

    如果肯鑽研,推薦《演算法導論》。這本書我讀過,內容非常詳細,闡述了許多經典演算法的推導過程。

    有很多大 V 推薦這本《演算法》,很適合基礎不夠牢固,又想好好補一下的程式設計師。

    這兩本書都不錯,學習演算法貴在堅持和積累,加油!

    最後送個福利,一份免費的資料結構和演算法必讀電子書大禮包送給大家。

  • 中秋節和大豐收的關聯?
  • 有十幾萬現金,如何創業?