① 程序員需要怎樣的數學基礎
離散數學對程序員來說非常重要,還有組合數學、線性代數、概率論、數論等等,即使你將來不做研究,這些基礎知識也能極大地提高你的水平。計算機科學對離散數學的要求很高,建議你先學習前面提到的這些課程,然後學習計算機演算法和數據結構,再配合到網上的在線題庫做題,過程很艱辛,但是對你的幫助會很大。
推薦書目:
《具體數學》(先學完前面的數學課程,罩衫在水平有一定進步以後再看)
《演算法導論》(應該人手一本的好書)
簡單來說,學數學的目的,一方面是活躍你的思維;另一方面是為了深入學習演算法打基礎,設畢老想物數腔一下,同樣的問題,普通人的程序要幾十分鍾甚至幾小時幾天才能解決出來,甚至根本無法解決,而你精心設計的程序卻能在1秒內解決出來,這就是數學的魅力、演算法的魅力。
其實,一切取決於你是否想做一個高級程序員。如果你做體力活(其實一般編程別人都認為是體力活),那你可以不學,因為你用不到,但是,你要是做技術上的創新,做個很強的程序員,沒有數學的支持,很難。
你既然學習了C,c++,你也知道演算法的重要性,同樣一個問題,我用13行程序解決了,我的同學居然用了33行,因為他不懂的用數學。你要達到什麼高等,取決於你的數學修養。當然,要做一個普通的程序員就不用學習了。要挑戰自己,做個好的,優秀的,學習數學吧!
② 求好書推薦!! C語言, 數據結構 和 演算法設計等 (分後補!)
額,跟你這么說吧,我看過的c語言里邊比較適合學習的有三本:譚浩強的那本c語言,比較適合入門,如果你有點基礎可以看看《c語言程序設計》和《c程序設計語言》這兩本都是機械工業出版社出版的外國經典書,看的順序最好按我給你說的。c程序設計語言是C語言之父寫的,誰看誰知道,什麼叫做經典。
數據結構方面也可以看看機械工業出版社出版的大理石紋封面系列的翻譯的外國經典的書,名字好像是《數據結構》、《數據結構與演算法》(c語言版),如果學校里學了嚴蔚敏的也可以在好好研究下她老人家的,也比較不錯。
想學演算法的話,就看《演算法導論》依然是機械工業出版社出版的大理石紋封面,很給力。另外我的經歷告訴我,看書學技術盡量看國外的經典的書,風趣有味,誰看誰知道。希望對你有幫助哈。像c++的話人民郵電出版社出版的有幾本不錯的。
③ 學數據結構(C++)有什麼值得推薦的好書
遠標老師以前推薦我看《數據結構》可以拿來入門。然後可以根據自己的實際情況來安排怎麼樣學習數據結構。很多人是看一遍書,然後在遇到演算法之後再去實現它。在這里列出一些我知道的演算法書籍,以供參考。(我也只看過演算法導論,編程之美)
1. CLRS 演算法導論
演算法網路全書,只做了前面十幾章的習題,便感覺受益無窮。
2. Algorithms 演算法概論
短小精悍,別據一格,准經典之作。一個壞消息: 同演算法導論,該書沒有習題答案。好消息:習題很經典,難度也適中,只需花點點時間自己也都能做出來。不好也不壞的消息:我正在寫習題的答案,已完成前三章,還剩九章約二百道題,順利的話二個月之後發布。另有中文版名《演算法概論》,我沒看過,不知道翻譯得怎麼樣。如果有心的話,還是盡量看原版吧,其實看原版與看中文版花費時間不會相差很大,因為大部分時間其實都花費在做習題上了。
dr. dobb's essential books on Algorithm and daba structure
3. Algorithm Design 演算法設計
很經典的一本書,很久之前看的,遺憾的是現在除了就記得它很經典之外其它都忘光了。
4. SICP 計算機程序的構造和解釋
六星之書無需多言,雖然這不是一本講演算法的書,但看完此書有助於你更深入的理解什麼是遞歸。我一直很強調習題,看完此書後你至少應該做完前四章的太部分習題。否則那是你的遺憾,也是作者的遺憾。
5. Concrete Mathematics 具體數學
有人說看TAOCP之前應該先弄清楚這本書的內容,要真是如此的話那我恐怕是看不到TAOCP了。零零碎碎的看了一大半,很多東西都沒有時間來好好消化。如果你是剛進大學不久的本科生,有著大把的可自由支配時間,那你幸運又幸福了,花上幾個月時間好好的讀一下此書吧,收獲絕對大於你的期望值。
6. Introction to The Design and Analysis of Algorithms 演算法設計與分析基礎
很有趣的一本演算法書,有許多在別的書上找不到的趣題,看完此書絕對能讓你大開眼界,實在是一本居家旅行,面試裝逼的必備佳作。
7. 編程之美--微軟技術面試心得
雖說是一本面試書,但如果把前面十幾頁扯掉的話,我更願意把它看作是一本講解題思維的演算法小品。在書中,作者通常是給出一個平常解法,然後再一次又一次的優化改進,你可以很清楚的看到基本的演算法設計思想是如何得到運用以解決實際問題的。如果你已經有了一些演算法的基礎,看完本書應該能使你的演算法應用能力得到一定的提高。另外,本書生動有趣,也同樣適合於初學者。
8. Fundamentals of Algorithmics 演算法基礎
也是很久之前在學校圖書館借來看的,內容記不太清楚了,只隱約記得此書的動態規劃章節猶為出彩。應該是很經典的一本書,個人以為足以和演算法導論等所謂當世經典平分秋色,但是怎麼好像被人提到的不多,或許是我孤陋寡聞了。
9. How to solve it 怎樣解題
二十世紀最偉大的數學思想家之一波利亞的力作,講一般性的解題方法:怎麼認識問題,怎麼轉換問題,怎麼解決問題,如何在問題中得到啟發,如何找到一個通往答案的方向。
10. Programming interviews exposed 程序員面試攻略
一本消遣之作。個人以為要比國內的某「XXX面試寶典」純粹一些,至少也有一些啟發性的內容,而不單單是面試題解庫。
11. Programming Pearls 編程珠璣
學習演算法不僅需要像Alogrithms,演算法導論這樣的重量級的內功心法,像《編程之美》、《編程珠璣》這樣的輕量級的輕功身法也必不可少。前些年網上不是很流行像「給你10億個數,找到最大的n個」或者「給你10億個數,找出現次數最多的那個數」之類的網路面試題嗎?看了此書你就知道怎麼解決了。相比於《編程之美》來說,本書中的示例技巧性略低一些,但是也更有實際應用價值一些。
12. 演算法藝術與信息學競賽
如果演算法導論是九陽神功,那這本無疑就是九陰真經。本書是專為參加一些諸如ACM之類程序設計比賽的同學而寫的,江湖人稱「黑書」。裡面講的都是一些在編程比賽中常用的演算法、數據結構,以及一些數論和計算幾何等。我雖然並不搞競賽,但也從此書中受益頗多。
13. An Introction to Probability Theory and Its Applications
准備看的,現在才發現概率論有多麼重要,可惜本科的時候沒有好好學。前不久一個同學問我個問題,我半天弄了一個程序給他,他說:這里就不是相關系數么,Excel一下就完事!我暈,我還真不知道那就是相關系數。
14. Numerical Analysis
這本的作者是Richard L. Burden,J. Douglas Faires
數值分析,討論各種數值演算法,比如插值、擬合、積分、微分方程的求解、線性和非線性方程組求解等。准備詳細看。
15. TAOCP 計算機程序設計藝術
傳說中的TAOCP,說的人多,看的人少。TAOCP四卷堪稱是演算法藏經閣中的易筋經或者是少林七十二絕技。天下武學,盡出少林,天下演算法,盡出TAOCP也。這點你可以順便翻開一本演算法書看看他的引用文獻就知道了。我只讀了第四卷的部分章節,前三卷暫時還沒敢看,還在讀書計劃表中被無限期擱置。
④ 著名的數學著作有哪些
1、《張丘建算經》:中國古代數學著作。(約公元5世紀)現傳本有92問,比較突出的成就有最大公約數與最小公倍數的計算,各種等差數列問題的解決、某些不定方程問題求解等。自張邱建以後,中國數學家對百雞問題的研究不斷深入,百雞問題也幾乎成了不定方程的代名詞,從宋代到清代圍繞百雞問題的數學研究取得了很好的成就。
2、《四元玉鑒》:《四元玉鑒》是元代傑出數學家朱世傑的代表作,其中的成果被視為中國籌算系統發展的頂峰。它是一部成就輝煌的數學名著,受到近代數學史研究者的高度評價,認為是中國數學著作中最重要的一部,同時也是中世紀最傑出的數學著作之一。
但其美中不足的是,在四元玉鑒中,對於一些重要的問題如求解高次聯立方程組的消去法等解說過於簡略,並且對於書中每一個問題的解法也沒有列出詳細的演算過程,故比較深奧,人們很難讀懂。以致於自朱世傑之後,中國這種在數學上高度發展的局面不但沒有保持發展下去,反而很多成就在明、清的一段時期內幾乎失傳。
3、《數書九章》:《數書九章》是對《九章算術》的繼承和發展,概括了宋元時期中國傳統數學的主要成就,標志著中國古代數學的高峰。當它還是抄本時就先後被收入《永樂大典》和《四庫全書》。1842年第一次印刷後即在中國民間廣泛流傳。
《數書九章》最初叫《數術大略》或《數學大略》(9卷),分為9類,每類為一卷。約到元代時更名為《數學九章》,內容也由9卷改為18卷。明初抄本被收入《永樂大典》(1408),另抄本藏於文淵閣。明代學者王應遴傳抄時定名為《數書九章》,明末學者趙琦美再抄時沿用此名。抄本形式流傳到清代,1781年由李銳校訂後收入《四庫全書》。
4、《九章算術》:《九章算術》確定了中國古代數學的框架,以計算為中心的特點,密切聯系實際,以解決人們生產、生活中的數學問題為目的的風格。
該書內容十分豐富,全書總結了戰國、秦、漢時期的數學成就。同時,《九章算術》在數學上還有其獨到的成就,不僅最早提到分數問題,也首先記錄了盈不足等問題,《方程》章還在世界數學史上首次闡述了負數及其加減運演算法則。它是一本綜合性的歷史著作,是當時世界上最簡練有效的應用數學,它的出現標志中國古代數學形成了完整的體系。
5、《孫子算經》:《孫子算經》是中國古代重要的數學著作。成書大約在四、五世紀,也就是大約一千五百年前,作者生平和編寫年不詳。傳本的《孫子算經》共三卷。
卷上敘述算籌記數的縱橫相間制度和籌算乘除法,卷中舉例說明籌算分數演算法和籌算開平方法。卷下第31題,可謂是後世「雞兔同籠」題的始祖,後來傳到日本,變成「鶴龜算」。