① 一名程序員的數學水平需要多高
邏輯思維是重要,但最起碼的數學知識也要懂吧
大專因改就可以
② 《程序員的數學》pdf下載在線閱讀,求百度網盤雲資源
《程序員的數學(第2版)》([日]結城浩)電子書網盤下載免費在線閱讀
鏈接:
書名:程序員的數學(第2版)
作者:[日]結城浩
譯者:管傑
豆瓣評分:8.7
出版社:人民郵電出版社
出版年份:2020-4-1
頁數:262
內容簡介:
《程序員的數學 第2版》面向程序員介紹了編程中常用的數學知識,藉以培養初級程序員的數學思維。讀者無須精通編程,也無須精通數學,只要具備四則運算和乘方等基礎知識,即可閱讀本書。
《程序員的數學 第2版》講解了二進制計數法、邏輯、余數、排列組合、遞歸、指數爆炸、不可解問題等許多與編程密切相關的數學方法,分析了哥尼斯堡七橋問題、高斯求和、漢諾塔、斐波那契數列等經典問題和演算法。引導讀者深入理解編程中的數學方法和思路。
《程序員的數學 第2版》新增一個附錄來介紹機器學習的基礎知識,內容涉及感知器、損失函數、梯度下降法和神經網路,旨在帶領讀者走進機器學習的世界。
作者簡介:
結城浩(作者)
生於1963年,日本知名技術作家和程序員。在編程語言、設計模式、數學、加密技術等領域,編寫了很多深受歡迎的入門書。代表作有《數學女孩》系列、《程序員的數學》《圖解密碼技術》等。
管傑(譯者)
畢業於復旦大學日語系,現為對日軟體工程師,具有多年日語技術文檔編寫經驗。愛好日漢翻譯和日本文化史,譯有《明解C語言:入門篇》等。
盧曉南(譯者)
本科就讀於西安交通大學少年班、數學系。名古屋大學博士(信息科學)。現於山梨大學計算機系任助理教授。主要研究方向包括組合數學(離散數學)及其在信息科學、計算機科學、統計學中的應用。譯著有《程序員的數學3:線性代數》。
③ 程序員的數學要求高不高
一般的程序員都有四年的在專業領域的學習,需要一個在程序領域的學士學位獲得者,不論是數學方面的還是工程方面的都是可以的。大約有20%的人在這一領域的計算機科學和工程學擁有更高的學位。還有很小一部分程序員是自學的,盡管一些專業性的學校或者綜合大學可以提供,但是也需要一些別的途徑來提供相關的人才。盡管學歷是比較重要的,但是公司經常把重點放在應聘者的工作經驗上,很多剛從大學畢業的大學生雖然有引人注目的學位證書,但是他們找不到工作是因為他們缺乏經驗。一個程序員雖然有正規的學歷,但是如果一個人擁有程序設計的深厚知識背景或者豐富的工作經驗的話,那麼他的機會要比有學歷的應屆畢業生大得多。所以要盡量抓住有用的工作和實習機會,這樣的話在畢業後你就會發現,多實習讓你有更多的經驗,在找工作的時候就有更多的機會。
對於職業程序員,另外一個重要的方面就是,程序員需要不斷提升自己的業務技術,你的技術必須一直保持在一個較高的水平,並且要不斷發展,程序員也要尋找貿易的機會,要參加研討會,在周刊上發表文章和接受職業教育,這些使程序員在自己的領域中分級或者不斷並排前進。
程序員的要求
無論如何,作為程序員,以下幾個內容必須掌握
C語言,數據結構,演算法,編譯原理(不強求,至少知道詞法分析和語法分析),OS的一些基本原理(進程調度,內存調度等等),計算機體系結構,軟體工程
其他的要求至少英語四級(不然MSDN沒法看),寫過程序,數學不要太差
如果你掌握了這些內容,說明你至少和科班出身站在了同一起跑線上了。下面再根據你自己願意從事專業發展。發展大致可以按平台劃分
1、WINDOWS平台
2、LINUX/UNIX平台
3、嵌入式平台
WINDOW平台機會最多,待遇也最低,LINUX/UNIX次子,嵌入式待遇最好。但是學習機會剛好相反,WIN平台很好學,LINUX/UNIX一般用於大型機,而你自己估計平時也不會用這些東西,至於嵌入式,如果公司不給你機會學習,那你根本就沒法進入這個行業。
當如,如果你在三個平台之一能做到精通,那麼待遇都會很高。不過我敢說,就算CSDN,真正能透徹了解WINDOWS運行機制,能把API運用的純熟的人都不會太多。
如果你做網路,網路也可以分很多。你是准備做布線,管理,架構還是研發?如果研發,又可以分寫一般通訊程序,路由等網路設備研發(已經偏硬)等。
那麼建議你至少熟悉以下內容
多平台的進程調度多線程和線程同步(TCP/IP協議在不同平台通訊很正常)
TCP/IP協議的了解
熟悉C/C++(跨平台C開發,包括VC,GCC等等)
等等
④ 做程序員編程需要什麼數學知識,初中文化可以學嗎
1.學習方法:本人認為這比什麼都重要如果這個沒掌握的話,可能直接影響你的成敗。眾所周知。。計算機知識 尤其是編程涉及到的知識可以說浩如煙海---那麼面對這么多的知識該怎麼去學呢?
---重點:1重實踐,不要去想,把一個知識點完全徹底的掌握,那將是非常恐怖的,有編程經驗的朋友都知道,編程里每個知識點深糾起來的話是非常困難的,更不要說是新手了。。那麼知識點該掌握到什麼程度呢? 個人認為:1-知道它是做什麼 2-知道怎麼使用。 這就足夠了。。。。不要去管他的原理是什麼,能把東西做出來才是王道。。。
---重點:2多寫, 這個在編程界可以說是真理了,真正寫程序的人都知道,一段程序你理解了並不代表你就會寫了,那麼怎麼樣才能提高「寫」的能力呢? 本人認為要注意一下幾點 1- 練習多做是必然的。 2- 做練習時不要因為覺得代碼簡單就只看不敲,哪怕多敲一遍HelloWorld 都是有好處的。 3- 相似的代碼不要復制,我見過很多朋友,遇到兩段程序類似,就懶的敲直接粘貼過去修改。。。請記住這是軟體開發人員的做法,而你不是,目前你還只是一個學習者而已。所以 原則就是 能敲的就不要復制。
---重點:3把精力用在理解上而不要用在背上 寫程序的朋友都知道,函數---關鍵字---常用類什麼的,都非常的熟悉,為什麼我們背過嗎?沒有 寫的多了自然就記的牢了, 所以建議新手不要去死背什麼概念,或語法 一定要理解它的作用。。。
---重點:4 筆記,我認為這點很重要,我自學時全是看書,和視頻教程,然後總結對自己有用的東西。記在本上,而將來如果印象不深刻了由於是自己用自己理解的方式寫的,簡單翻一翻就能回憶起來,而如果,你忘了再去翻視頻 或 翻書的話。。那麼即使你曾經學過,也可能一時想不起來。。。
1.關於數學。。。這個問題,我覺得是目前爭論最多的話題,我見過N多人說 學編程要學XX數學---什麼微積分---什麼離散---嚇的新手連想都不敢想,我只想對這些人說一句,如果你懂,請你們幫助新手,如果你們不懂 請你們閉嘴 謝謝不要 誤人子弟。。。那麼下面我來 具體回答一下數學方面的問題。。。
1- 編程用數學嗎? 用! 回答是肯定的,但要看你是做哪方面的程序。 懂編程的都知道,現在編程基本分B/C構架,即:客戶端/瀏覽器端 與 C/S構架 即:客戶端/伺服器端 前者基本上就是JAVA PHP ASP.NET 等等。。。其中有多少地方用到了數學,如果還堅持沒數學學不了編程的朋友請站出來回答下我的問題。。。
至於C/S 如果不是做系統級的程序員 或 大型3D圖象處理 或者是音頻處理的軟體我請問又有多少地方用到了數學?如果你覺得x/y=z 這也算高等數學的話,我無話可說。。。。總結--除了3D等圖象處理編程 或 音頻處理編程 或系統級編程以外 其他編程對數學要求並不很高。。。。
2.關於英語, 我認為這個是個不可迴避的話題,學編程一點英語不懂我覺得不太現實,畢竟有很多文檔也是用英文寫的,而且程序員都知道,編程時經常要用簡單的英文,哪怕是定義個變數名,也要用英文起名, 沒見過哪個程序員定義的變數叫什麼aaa或bbb的。 那麼新手該怎麼面對英語呢, 我覺得很容易,按照書上或教程上去做就足夠了,1 編寫程序時 按規范要求去做,首先變數名,用見名知意思的英文單詞, 寫注釋時 也用英文短句。。。 拋異常時 也用英文來標注等等。。。。慢慢積累,時間久了你就會發現其實計算機里的英語 就只有那麼幾句而已。。。
3.關於學校 這個我也想提一下,有很多想以程序員為工作的朋友可能都考慮過找個培訓班---但我的建議是。不要去---起碼一般的不要去,為什麼?效果不好,就這么簡單,我親自到XXX著名編程培訓學校試聽過。。。結果很遺憾 一周才那麼幾天課,我3天閱讀的知識點比他們1個興趣 教的還多。。。而且上機和理論還是分開,新學的知識不能立刻上機實踐等等。。我覺得都是很嚴重的弊病。。。跟嚴重的那些所謂的學校給學生們造成了一種假象。。。只要在學校里考試合格了,出去就能做程序員,甚至軟體工程師了。。。最後他們將發現,原來他們在學校里學的 只是基礎中的基礎而已 - -
4. 自學的資料,我個人認為,自學第一重要的是 視頻教程,懂的人都知道,編程學習時重點並不完全是知識點,而是如何運用那些知識點,這也是項目經驗今天被人們這么看中的主要原因。。。所以視頻教程絕對是不二的選擇,現在網上的視頻教程非常之多 各種各樣的都有 具體怎麼找相信不用我教了 google 電驢 迅雷--我就是靠他們活過來的 。。。而且視頻教程還有一點是學校比不了的,那就是 你可以隨時看 重復看,一個知識點沒明白 你可以反復的聽10遍 20遍都沒問題, 學校恐怕就不行了吧。 另一個優點是可以在你狀態好時看, 大家都有狀態不好的時候,累了-困了 很正常,可在學校,誰管你? 老師講完了 聽不懂你自己的問題,而視頻呢,好辦 累了 先休息一會 有精神了 想怎麼看就怎麼看。。。我覺得 找到好的視頻教程。。比任何老師都重要。。至於出現問題不懂怎麼辦? 相信能來到著找到我這篇文章的朋友 都有辦法解決的。。
5.書 --- 我非常喜歡看視頻教程,但我堅決反對只看視頻不看書,為什麼?很簡單視頻傳授的是 寫程序的經驗 而書則是細膩的為你講解其中的原理。。所以我的建議是 先把一個知識的視頻看一遍,然後再把書翻一遍 然後自己再寫2遍 量變必然引起質變 我相信這是放之四海 而皆準的道理(指編程行業)
6.時間+態度 我認為這也很重要,很多人經常這樣問我,我1個月能學會編程么? 我半年能成為編程高手么? 我覺得有這樣心理的人比適合學編程。。。 學編程最忌心浮,一個知識點還沒弄明白 就想寫個項目出來 這是不可能的,這樣最後只能導致你自己喪失信心,編程要一步一步的來,相信我哪怕用一天時間才掌握了一個知識點,起碼比你用一天的時間 看完整本書強。。因為前者起碼你還是有點收獲的(指新手,老手兩天一本書很正常有經驗了嗎 - -) 這里我可以給大家一我的學習時間大家可做為參考。。。我是從0基礎開始一直到現在掌握j2ee基本所有的基礎開發技能 用時一年半,本人覺得不算慢 每天最少看書+練習5小時 每天不停這個是我的進度。
⑤ 大二,數學專業,想做程序員,糾結考研的也問題
想要更專業就讀研,想要有工作經驗就工作。
⑥ 程序員的數學的作者目錄
第1章 0 的故事
——無即是有
本章學習內容 2
小學一年級的回憶 2
10 進制計數法3
什麼是10 進制計數法3
分解25033
2 進制計數法4
什麼是2 進制計數法4
分解11005
基數轉換 6
計算機中為什麼採用2 進制計數法8
按位計數法10
什麼是按位計數法10
不使用按位計數法的羅馬數字11
指數法則12
10 的0 次方是什麼12
10-1 是什麼13
規則的擴展14
對20 進行思考14
2-1 是什麼15
0 所起的作用16
0 的作用:佔位16
0 的作用:統一標准,簡化規則16
日常生活中的017
人類的極限和構造的發現18
重溫歷史進程18
為了超越人類的極限19
本章小結20
第2章 邏輯
——真與假的二元世界
本章學習內容22
為何邏輯如此重要22
邏輯是消除歧義的工具22
致對邏輯持否定意見的讀者23
乘車費用問題——兼顧完整性和排他性 23
車費規則23
命題及其真假24
有沒有「遺漏」24
有沒有「重復」25
畫一根數軸輔助思考26
注意邊界值28
兼顧完整性和排他性28
使用if 語句分解問題28
邏輯的基本是兩個分支29
建立復雜命題30
邏輯非——不是A30
邏輯與—— A 並且B32
邏輯或—— A 或者B34
異或—— A 或者B(但不都滿足)37
相等—— A 和B 等39
蘊涵——若A則B40
囊括所有了嗎45
德?摩根定律46
德?摩根定律是什麼46
對偶性47
卡諾圖48
二燈游戲48
首先藉助邏輯表達式進行思考49
學習使用卡諾圖50
三燈游戲52
包含未定義的邏輯54
帶條件的邏輯與(&&)55
帶條件的邏輯或(||)57
三值邏輯中的否定(!)58
三值邏輯的德?摩根定律58
囊括所有了嗎59
本章小結60
第3 章 余數
——周期性和分組
本章學習內容64
星期數的思考題(1)64
思考題(100天以後是星期幾)64
思考題答案64
運用余數思考65
余數的力量——將較大的數字除一次就能分組65
星期數的思考題(2)66
思考題(10100 天以後是星期幾)66
提示:可以直接計算嗎67
思考題答案67
發現規律68
直觀地把握規律68
乘方的思考題70
思考題70
提示:通過試算找出規律70
思考題答案70
回顧:規律和余數的關系71
通過黑白棋通信71
思考題71
提示73
思考題答案73
奇偶校驗73
奇偶校驗位將數字分為兩個集合74
尋找戀人的思考題74
思考題(尋找戀人)74
提示:先試算較小的數74
思考題答案75
回顧75
鋪設草席的思考題77
思考題(在房間里鋪設草席)77
提示:先計算一下草席數77
思考題答案78
回顧78
一筆畫的思考題79
思考題(哥尼斯堡七橋問題)79
提示:試算一下80
提示:考慮簡化一下81
提示:考慮入口和出口82
思考題答案82
奇偶校驗85
本章小結86
第4 章 數學歸納法
——如何征服無窮數列
本章學習內容88
高斯求和88
思考題(存錢罐里的錢)88
思考一下89
小高斯的解答89
討論一下小高斯的解答89
歸納91
數學歸納法—— 如何征服無窮數列91
0以上的整數的斷言92
高斯的斷言93
什麼是數學歸納法93
試著征服無窮數列94
用數學歸納法證明高斯的斷言95
求出奇數的和 —— 數學歸納法實例96
奇數的和96
通過數學歸納法證明97
圖形化說明98
黑白棋思考題 —— 錯誤的數學歸納法99
思考題(黑白棋子的顏色)99
提示:不要為圖所惑100
思考題答案 100
編程和數學歸納法101
通過循環表示數學歸納法101
循環不變式 103
本章小結107
第5章 排列組合
——解決計數問題的方法
本章學習內容110
計數——與整數的對應關系110
何謂計數110
注意「遺漏」和「重復」111
植樹問題——不要忘記0111
植樹問題思考題111
加法法則115
加法法則115
乘法法則117
乘法法則117
置換121
置換121
歸納一下122
思考題(撲克牌的擺法)123
排列125
排列125
歸納一下126
樹形圖——能夠認清本質嗎128
組合130
組合130
歸納一下131
置換、排列、組合的關系132
思考題練習 134
重復組合134
也要善於運用邏輯136
本章小結139
第6章 遞歸
——自己定義自己
本章學習內容142
漢諾塔142
思考題(漢諾塔)142
提示:先從小漢諾塔著手143
思考題答案 146
求出解析式 148
解出漢諾塔的程序149
找出遞歸結構150
再談階乘151
階乘的遞歸定義152
思考題(和的定義)153
遞歸和歸納 153
斐波那契數列154
思考題(不斷繁殖的動物)154
斐波那契數列157
帕斯卡三角形159
什麼是帕斯卡三角形159
遞歸定義組合數162
組合的數學理論解釋163
遞歸圖形165
以遞歸形式畫樹165
實際作圖166
謝爾平斯基三角形167
本章小結168
第7章 指數爆炸
——如何解決復雜問題
本章學習內容172
什麼是指數爆炸 172
思考題(折紙問題)172
指數爆炸175
倍數游戲——指數爆炸引發的難題176
程序的設置選項176
不能認為是「有限的」就不假思索178
二分法查找——利用指數爆炸進行查找178
尋找犯人的思考題178
提示:先思考人數較少的情況179
思考題答案 180
找出遞歸結構以及遞推公式181
二分法查找和指數爆炸183
對數——掌握指數爆炸的工具184
什麼是對數 184
對數和乘方的關系184
以2為底的對數186
以2為底的對數練習186
對數圖表187
指數法則和對數188
對數和計算尺190
密碼——利用指數爆炸加密193
暴力破解法 193
字長和安全性的關系193
如何處理指數爆炸195
理解問題空間的大小195
四種處理方法195
本章小結196
第8章 不可解問題
——不可解的數、無法編寫的程序
本章學習內容200
反證法200
什麼是反證法200
質數思考題 202
反證法的注意事項203
可數203
什麼是可數 203
可數集合的例子204
有沒有不可數的集合206
對角論證法 207
所有整數數列的集合是不可數的207
所有實數的集合是不可數的211
所有函數的集合也是不可數的212
不可解問題 213
什麼是不可解問題213
存在不可解問題214
思考題 215
停機問題215
停機216
處理程序的程序217
什麼是停機問題217
停機問題的證明219
寫給尚未理解的讀者222
不可解問題有很多223
本章小結224
第9章 什麼是程序員的數學
——總結篇
本章學習內容226
何為解決問題229
認清模式,進行抽象化229
由不擅長催生出的智慧229
幻想法則230
程序員的數學231
⑦ 當一個程序員需要多好的數學
任何面向工作的功利的學習行為都可以視為一種投資,必須考慮成本和收益的tradeoff;總體來看,個人認為計算機系本科不教的數學對於絕大多數程序員來說都是沒有必要熟練掌握的數學。
數學不包括演算法。演算法一直是屬於計算機科學領域的。數據結構演算法能力是程序員的核心能力之一,而且永不過時。
當程序員做開發工作,有些方向不太需要數學,有些方向需要特定類型的數學(比如游戲開發、圖形學會用到大量數值工具等);解決特定問題需要學習特定類型的數學;專門做特定領域的計算機科學研究需要用到大量特定領域的數學;既然如此,那就在碰到相應問題的需求去學習對應的知識就好了,沒有必要非要計較到底哪個重要(前提是你應當知道你這個方向需要什麼樣的知識),也沒有必要僅僅是為了提高「數學基礎」而盲目不加選擇的去學習所有種類的數學。
⑧ 程序員需要數學很厲害嗎
程序員不需要數學特別優秀,但需要有一定的數學基礎。
程序員(英文Programmer)是從事程序開發、程序維護的基層工作人員。一般將程序員分為程序設計人員和程序編碼人員,但兩者的界限並不非常清楚。
數學是人類對事物的抽象結構與模式進行嚴格描述的一種通用手段,可以應用於現實世界的任何問題,所有的數學對象本質上都是人為定義的。從這個意義上,數學屬於形式科學,而不是自然科學。不同的數學家和哲學家對數學的確切范圍和定義有一系列的看法。
程序員崗位職責:
1、對項目經理負責,負責軟體項目的詳細設計、編碼和內部測試的組織實施,對小型軟體項目兼任系統分析工作,完成分配項目的實施和技術支持工作。
2、協助項目經理和相關人員同客戶進行溝通,保持良好的客戶關系。
3、參與需求調研、項目可行性分析、技術可行性分析和需求分析。
4、熟悉並熟練掌握交付軟體部開發的軟體項目的相關軟體技術。
⑨ 程序員的數學怎麼樣
首先,這是本好書。本書有相當不錯的易讀性和趣味性,可以作為最入門級別的啟蒙教材。我認為數學和編程是很重要的兩個東西,而這本書可以當成這兩門學問的基礎讀物......
⑩ 《程序員的數學3線性代數》pdf下載在線閱讀全文,求百度網盤雲資源
《程序員的數學3線性代數》([日] 平岡和幸/[日] 堀玄)電子書網盤下載免費在線閱讀
鏈接:
書名:程序員的數學3線性代數
豆瓣評分:8.2
者:[日] 平岡和幸/[日] 堀玄
出版社:人民郵電出版社
出品方:圖靈教育
副標題:線性代數
譯者:盧曉南
出版年:2016-3
頁數:384
內容簡介:
本書沿襲「程序員的數學」系列平易近人的風格,用通俗的語言和具象的圖表深入講解了編程中所需的線性代數知識。內容包括向量、矩陣、行列式、秩、逆矩陣、線性方程、LU分解、特徵值、對角化、Jordan標准型、特徵值演算法等。
作者簡介:
堀玄
專攻應用數學和物理,主要從事腦科學與信號處理領域的研究。喜歡Ruby、JavaScript、PostScript等語言。最近正在研究基於統計學理論的語言處理。工學博士。
平岡和幸
專攻應用數學和物理,對機器學習興趣濃厚。喜歡Ruby,熱愛Scheme。最近被Common Lisp吸引,正在潛心研究。工學博士。