回覆列表
  • 1 # 人生學堂

    演算法方面的好書有不少,推薦這幾本給你:

    《演算法導論》(原書第3版)

    大師們改變了世界,但實際上,世界每天都在發生變化,這其中,也有你貢獻的一份力量。你可以讀一讀這7本經典的演算法書,然後繼續追隨大師的腳步,跟他們一起改變世界。

    推薦語:超過50萬人閱讀的演算法聖經!演算法標準教材,大陸外1000餘所高校採用。全書各章自成體系,可以作為獨立的學習單元;演算法以英語和虛擬碼的形式描述,具備初步程式設計經驗的人就能看懂;說明和解釋力求淺顯易懂,不失深度和數學嚴謹性。

    關於作者:托馬斯·科爾曼,達特茅斯學院計算機科學系教授、系主任。目前的研究興趣包括:演算法工程、平行計算、具有高延遲的加速計算。他分別於1993年、1986年獲得麻省理工學院電子工程和計算機科學博士、碩士學位,師從Charles E. Leiserson教授。由於他在計算機教育領域的突出貢獻,Cormen教授榮獲2009年ACM傑出教員獎。

    查爾斯·雷瑟爾森,麻省理工學院計算機科學與電氣工程系教授,Margaret MacVicar Faculty Fellow。他目前主持MIT超級計算技術研究組,並是MIT計算機科學和人工智慧實驗室計算理論研究組的成員。他的研究興趣集中在並行和分散式計算的理論原理,尤其是與工程現實相關的技術研究。Leiserson教授擁有卡內基·梅隆大學計算機科學博士學位,還是ACM、IEEE和SIAM的會士。

    《演算法基礎:開啟演算法之門》

    推薦語:超過50萬人閱讀的演算法聖經!演算法標準教材,大陸外1000餘所高校採用。全書各章自成體系,可以作為獨立的學習單元;演算法以英語和虛擬碼的形式描述,具備初步程式設計經驗的人就能看懂;說明和解釋力求淺顯易懂,不失深度和數學嚴謹性。

    關於作者:托馬斯·科爾曼,達特茅斯學院計算機科學系教授、系主任。目前的研究興趣包括:演算法工程、平行計算、具有高延遲的加速計算。他分別於1993年、1986年獲得麻省理工學院電子工程和計算機科學博士、碩士學位,師從Charles E. Leiserson教授。由於他在計算機教育領域的突出貢獻,Cormen教授榮獲2009年ACM傑出教員獎。

    《機器學習演算法》

    推薦語:本書採用理論與實踐相結合的方式,在簡明扼要地闡明機器學習原理的基礎上,透過大量例項介紹了不同場景下機器學習演算法在scikit-learn中的實現及應用。書中還有大量的程式碼示例及圖例,便於讀者理解和學習並實際上手操作。另一方面,書中還有很多的延伸閱讀指導,方便讀者系統性地瞭解機器學習領域的現有技術及其發展狀態。

    關於作者:朱塞佩·博納科爾索(Giuseppe Bonaccorso),擁有12年機器學習和大資料方面的經驗,擔任過公共管理、軍事、公用事業、醫療保健、診斷和廣告等多個業務領域的IT工程師,使用Java、Python、Hadoop、Spark、Theano和TensorFlow等多種技術進行過專案開發與管理。他的主要研究興趣包括人工智慧、機器學習、資料科學等。

    《演算法設計與應用》

    推薦語:既有演算法的經典內容,也有現代專題,舉自現實世界問題的例子,提供三種類型的練習。

    關於作者:Michael Goodrich,加州大學歐文分校計算機科學系首席教授,在這之前他是約翰霍普金斯大學的教授。他的研究興趣包括演算法的分析、設計和實現,以及資料安全、雲計算、繪圖和計算幾何。他是AAAS、ACM和IEEE會士,曾榮獲IEEE計算機協會技術成就獎和ACM卓越服務獎等。

    Roberto Tamassia,布朗大學計算機科學系Plastech教授,布朗幾何計算中心主任。他的研究興趣包括資料安全、應用密碼學、雲計算、演算法、繪圖,以及計算幾何的分析、設計和實現。他是AAAS、ACM和IEEE會士,曾榮獲IEEE計算機學會技術成就獎。

    《演算法技術手冊》(原書第2版)

    推薦語:伍斯特理工學院教授合力打造的演算法學習必備手冊;提供高效的程式碼解決方案,輕鬆應用於實踐。

    Gary Pollice 伍斯特理工學院的實踐教授,《深入淺出面向物件與設計》(Head First Object Oriented Analysis and Design)的合著者。

    Stanley Selkow,有著40年的大學教齡,他所從教的大學遍佈於加拿大蒙特利爾、中國重慶、瑞士洛桑和法國巴黎。

    《圖解演算法》

    推薦語:本書以輕鬆的對話方式,採用圖解的輔助說明,幫助讀者簡單且自然地掌握演算法的基本概念,並養成主動思考的習慣,達到用演算法解決實際問題的目的。

    《推薦系統:技術、評估及高效演算法》

    推薦語:融合不同領域專家學者的理論成果和實踐經驗,全面介紹推薦系統的主要概念。

    利奧·羅卡奇,以色列本-古裡安大學資訊系統工程系助理教授。他是智慧資訊系統方面公認的專家,在這一領域處於領先地位。他的主要研究領域包括資料探勘、模式識別和推薦系統。

    布拉哈·夏皮拉,以色列本-古裡安大學資訊系統工程系助理教授。目前她的研究興趣包括推薦系統、資訊檢索、個性化、使用者建模和社交網路。

  • 2 # 玩車金字塔

    好,我是BENZ, 讓我來回答一下這個問題。

    大一軟體工程專業,按照正常的學習計劃來講,應該是剛開始學習一些程式語言,比如C語言,Java語言等比較流行且具有代表性的語言,C語言是面向過程的,JAVA是面向物件的語言,基本是面向過程與物件的兩種語言了,那也有學習C++面向物件的程式語言的。不過相對JAVA語言來講,難度稍高一點,且沒有JAVA對開發者那麼友好。

    還有一點需要強調的就是數學,做演算法的都必須以數學為背景,在你越深入時你就需要數學,所有搞演算法的人裡面就有很多是數學家出身,這個是必須重要。比如神經網路來做人臉識別演算法,就會涉及到機率論、矩陣論的一些數學知識,如果沒有,基本是寸步難行。

    路線定好,就得想想學習的方法,好的學習方法事半功倍。需要找到適合自己的一套行之有效的方法。基本是學習理論——>上機實戰——>再學習——>再實戰這樣一個不斷重複的過程。根據我的經驗,我介紹一下比較好的書籍:

    C語言:

    《c primer plus》

    知識覆蓋面廣,講解精細、非常全面,適合初學者,沒有複雜的資料結構和演算法 ,很有利於學習建議上機多練習解題,熟能生巧。

    《C與指標》指標是C語言的精華所有,這本是C語言最好的進階書籍,沒有之一,不接受反駁。呵呵。

    C++語言:

    《C++ Primer》

    C++大師Stanley B. Lippman豐富的實踐經驗和C++標準委員會原負責人Josée Lajoie對C++標準深入理解的完美結合,可以說是經典之種的經典。對C++的知識具對很強的權威解釋。同時具有大量的習題,對中高階程式設計師再合適不過了。

    資料結構:《資料結構與演算法分析:C語言描述(原書第2版)》或

    《資料結構與演算法分析:C++描述(第3版)》

    二選一即可,我建議選後者,

    不多說,非常不錯的一本書。

    最後是就到演算法,經過前面的鋪墊,已經萬事俱備,只欠東風了,要狠下心來啃一下演算法大部頭了。這個書是當之無愧。需要多遍地去啃,你會越來越發現它偉大的,你會發現簡直太厲害了,令人慾罷不能。

    選擇演算法這條路,註定佈滿困難,你需要做的不斷的堅持,我見過好多在學習的路上學得一知半解,半途而廢的人。堅持不是說說就完,需要很大的毅力,在學習的過程,可以找一些同路中人一起討論一起研究,這樣會讓這個學習過程顯示沒那麼艱難,相信四年的學習,一定會讓你學有所成的。

  • 中秋節和大豐收的關聯?
  • 如何看待京東母嬰聯手CBME打造線上線下全球母嬰正品市集?