圖解算法:使用JavaScript 版權(quán)信息
- ISBN:9787302605119
- 條形碼:9787302605119 ; 978-7-302-60511-9
- 裝幀:一般純質(zhì)紙
- 冊數(shù):暫無
- 重量:暫無
- 所屬分類:>
圖解算法:使用JavaScript 本書特色
本書采用豐富的圖例來闡述數(shù)據(jù)結(jié)構(gòu)和*常用的算法概念,經(jīng)典算法包括:分治法、遞歸法、貪心法、動態(tài)規(guī)劃法、迭代法、枚舉法、回溯法,并增加實(shí)用的信息安全算法與人工智能的相關(guān)算法。每個算法都提供了由當(dāng)前*流行的前端開發(fā)工具JavaScript語言編寫的完整代碼;每章末尾都設(shè)計(jì)了難易適中的習(xí)題,供讀者進(jìn)一步演練,鞏固核心知識。
本書內(nèi)容淺顯易懂,邏輯嚴(yán)謹(jǐn),范例豐富,易于學(xué)習(xí)和掌握,力求兼顧教師教學(xué)和學(xué)生自學(xué)。
一本輕量級算法書,是你提高程序設(shè)計(jì)水平,提升自我價(jià)值的*佳投資。
零負(fù)擔(dān)理解算法設(shè)計(jì) 零基礎(chǔ)也能快速上手編程有幸提前閱讀到本書,收益良多。書中翔實(shí)地介紹了國內(nèi)IT項(xiàng)目管理的內(nèi)外部環(huán)境、對于項(xiàng)目經(jīng)理的能力要求和諸多常見問題的來龍去脈。針對典型的問題場景和案例,筆者以多年的實(shí)際經(jīng)驗(yàn),提供了較為完善的解決方案和處理問題的思路,為遇到類似困難和問題的項(xiàng)目經(jīng)理提供了值得借鑒的工作方法和寶貴的經(jīng)驗(yàn)。本書是廣大項(xiàng)目經(jīng)理和致力于項(xiàng)目管理工作的新人們不可多得的一本好書,值得一閱!
時趣互動CIO 張首華
溫故而知新,看似高不可攀的項(xiàng)目管理話題,實(shí)際上并不高高在上,而就在我們每個人的生活中。這本佳作帶我們領(lǐng)略真實(shí)項(xiàng)目管理過程的點(diǎn)滴,與其說是一本理論教學(xué)書,它更像一本枕邊工具書,推薦大家閱讀。
東軟醫(yī)療軟件工程師 微軟MVP 劉中正
作者具有豐富的IT項(xiàng)目管理經(jīng)驗(yàn),文章內(nèi)容實(shí)戰(zhàn)性很強(qiáng),對于IT行業(yè)中項(xiàng)目經(jīng)理的日常工作具有很好的指導(dǎo)意義。尤其是第4章的職場案例總結(jié)得非常全面,職場中的資深項(xiàng)目管理者也可以拿來借鑒參考。
資生堂麗源IT數(shù)字化轉(zhuǎn)型科長 前京東科技項(xiàng)目管理專家 許 磊
圖解算法:使用JavaScript 內(nèi)容簡介
本書以圖解的方式綜合講述算法及其數(shù)據(jù)結(jié)構(gòu),內(nèi)容淺顯易懂,邏輯嚴(yán)謹(jǐn),范例豐富,易于學(xué)習(xí)和掌握,力求兼顧教師教學(xué)和學(xué)生自學(xué)。
全書內(nèi)容分為五部分,共12章:計(jì)算思維與算法(~3章)介紹各個經(jīng)典的算法,包括分治法、遞歸法、貪心法、動態(tài)規(guī)劃法、迭代法、枚舉法、回溯法等;數(shù)據(jù)結(jié)構(gòu)相關(guān)算法(第4~6章)講述重要的數(shù)據(jù)結(jié)構(gòu)及其相關(guān)算法的實(shí)現(xiàn),數(shù)據(jù)結(jié)構(gòu)包括數(shù)組、鏈表、堆棧、隊(duì)列、樹結(jié)構(gòu)、圖結(jié)構(gòu)、哈希表;排序與查找算法(第7、8章)講述排序算法和查找算法;樹結(jié)構(gòu)與圖結(jié)構(gòu)相關(guān)算法(第9、10章)講述數(shù)組和鏈表相關(guān)算法、堆棧和隊(duì)列相關(guān)算法、樹結(jié)構(gòu)相關(guān)算法和圖結(jié)構(gòu)相關(guān)算法;現(xiàn)代議題算法(第11、12章)講述信息安全基礎(chǔ)算法、人工智能基礎(chǔ)算法等。
書中為每個算法及其數(shù)據(jù)結(jié)構(gòu)提供演算的詳細(xì)圖解,并為每個經(jīng)典的算法提供JavaScript編寫的完整范例程序(包含完整的源代碼)。每個范例程序都經(jīng)過了測試和調(diào)試,可以直接在標(biāo)準(zhǔn)的JavaScript環(huán)境中運(yùn)行。在每章末尾安排大量的習(xí)題(包括各類考試的例題),并在附錄中提供解答,以供讀者自測學(xué)習(xí)效果。
圖解算法:使用JavaScript 目錄
一部分計(jì)算思維與算法
1章計(jì)算思維與程序設(shè)計(jì)1
1.1計(jì)算思維3
1.1.1分解4
1.1.2模式識別4
1.1.3模式概括與抽象5
1.1.4算法5
1.2計(jì)算思維的腦力大賽6
1.2.1三分球比賽燈記錄器6
1.2.2圖像字符串編碼7
1.2.3計(jì)算機(jī)繪圖指令實(shí)踐8
1.2.4人游戲8
1.3生活中到處都是算法9
1.3.1算法的條件10
1.3.2時間復(fù)雜度O(f(n))12
課后習(xí)題14
2章經(jīng)典算法介紹15
2.1分治法15
2.2遞歸法16
2.3貪心法17
2.4動態(tài)規(guī)劃法19
2.5迭代算法19
2.6枚舉算法22
2.7回溯法25
課后習(xí)題31
3章經(jīng)典算法范例32
3.1字符串反轉(zhuǎn)32
3.2回文33
3.3整數(shù)反轉(zhuǎn)33
3.4常出現(xiàn)的字母34
3.5判斷兩個單詞或詞組是否相同34
3.6反轉(zhuǎn)數(shù)組中元素的順序35
3.7將句中的單詞反轉(zhuǎn)36
3.8首字母大寫37
3.9平均值38
3.10返回給定總和的數(shù)值序?qū)?8
3.11大利潤39
3.12斐波那契數(shù)列40
3.13記憶式斐波那契數(shù)列41
3.14階梯圖形43
3.15金字塔圖形43
課后習(xí)題44
二部分?jǐn)?shù)據(jù)結(jié)構(gòu)相關(guān)算法
4章數(shù)據(jù)結(jié)構(gòu)簡介45
4.1認(rèn)識數(shù)據(jù)結(jié)構(gòu)46
4.1.1數(shù)據(jù)與信息47
4.1.2數(shù)據(jù)類型48
4.2常見的數(shù)據(jù)結(jié)構(gòu)48
4.2.1數(shù)組49
4.2.2鏈表50
4.2.3堆棧51
4.2.4隊(duì)列52
4.3樹結(jié)構(gòu)簡介53
4.3.1樹的基本概念54
4.3.2二樹55
4.4圖論簡介56
4.4.1圖論起源56
4.4.2圖形的定義57
4.5哈希表58
課后習(xí)題59
5章數(shù)組與鏈表相關(guān)算法60
5.1矩陣算法與深度學(xué)習(xí)60
5.1.1矩陣相加算法62
5.1.2矩陣相乘63
5.1.3轉(zhuǎn)置矩陣64
5.1.4稀疏矩陣65
5.2數(shù)組與多項(xiàng)式68
5.3單向鏈表算法69
5.3.1單向鏈表的連接功能70
5.3.2單向鏈表插入新節(jié)點(diǎn)的算法72
5.3.3單向鏈表刪除節(jié)點(diǎn)的算法77
5.3.4對單向鏈表進(jìn)行反轉(zhuǎn)的算法80
課后習(xí)題83
6章堆棧與隊(duì)列相關(guān)算法85
6.1以數(shù)組來實(shí)現(xiàn)堆棧85
6.2以鏈表來實(shí)現(xiàn)堆棧88
6.3漢諾塔問題的求解算法90
6.4八皇后問題的求解算法95
6.5用數(shù)組來實(shí)現(xiàn)隊(duì)列98
6.6用鏈表來實(shí)現(xiàn)隊(duì)列100
6.7雙向隊(duì)列103
6.8優(yōu)先隊(duì)列106
課后習(xí)題107
三部分排序與查找算法
7章排序算法109
7.1認(rèn)識排序110
7.2冒泡排序法110
7.3選擇排序法113
7.4插入排序法115
7.5希爾排序法117
7.6合并排序法119
7.7快速排序法122
7.8基數(shù)排序法125
課后習(xí)題127
8章查找算法128
8.1順序搜索法129
8.2二分查找法131
8.3插值查找法133
8.4斐波那契查找法135
課后習(xí)題139
部分樹結(jié)構(gòu)與圖結(jié)構(gòu)相關(guān)算法
9章樹結(jié)構(gòu)相關(guān)算法140
9.1用數(shù)組來實(shí)現(xiàn)二樹141
9.2用鏈表來實(shí)現(xiàn)二樹143
9.3二樹遍歷146
9.4二查找樹150
9.5二樹節(jié)點(diǎn)的插入152
9.6二樹節(jié)點(diǎn)的刪除154
9.7堆積樹排序法157
9.8擴(kuò)充二樹161
9.9哈夫曼樹162
9.10平衡樹163
9.11博弈樹165
課后習(xí)題166
10章圖結(jié)構(gòu)相關(guān)算法168
10.1圖的簡介168
10.1.1歐拉環(huán)與歐拉鏈169
10.1.2無向圖及其重要術(shù)語169
10.1.3有向圖及其重要術(shù)語170
10.2圖的數(shù)據(jù)表示法172
10.2.1鄰接矩陣法172
10.2.2鄰接鏈表法175
10.2.3鄰接復(fù)合鏈表法177
10.2.4索引表格法178
10.3圖的遍歷178
10.3.1深度優(yōu)先遍歷法179
10.3.2廣度優(yōu)先遍歷法182
10.4生成樹185
10.4.1Prim算法186
10.4.2Kruskal算法187
10.5圖的短路徑算法191
10.5.1Dijkstra算法與A*算法192
10.5.2Floyd算法197
課后習(xí)題201
五部分現(xiàn)代議題算法
11章信息安全基礎(chǔ)算法203
11.1數(shù)據(jù)加密204
11.1.1對稱密鑰加密系統(tǒng)204
11.1.2非對稱密鑰加密系統(tǒng)與RSA算法205
11.1.3認(rèn)證206
11.1.4數(shù)字簽名206
11.2哈希算法207
11.2.1除留余數(shù)法207
11.2.2平方取中法208
11.2.3折疊法209
11.2.4數(shù)字分析法210
11.3碰撞與溢位處理211
11.3.1線性探測法211
11.3.2平方探測法213
11.3.3再哈希法213
11.3.4鏈表215
課后習(xí)題219
12章人工智能基礎(chǔ)算法220
12.1機(jī)器學(xué)習(xí)簡介221
12.1.1監(jiān)督式學(xué)習(xí)算法222
12.1.2半監(jiān)督式學(xué)習(xí)算法223
12.1.3無監(jiān)督式學(xué)習(xí)與K均值聚類算法223
12.1.4強(qiáng)化學(xué)習(xí)算法225
12.2認(rèn)識深度學(xué)習(xí)227
12.2.1人工神經(jīng)網(wǎng)絡(luò)算法227
12.2.2卷積神經(jīng)網(wǎng)絡(luò)算法230
12.2.3循環(huán)神經(jīng)網(wǎng)絡(luò)算法234
課后習(xí)題238
附錄A開發(fā)環(huán)境與JavaScript快速入門239
附錄B課后習(xí)題與解答273
展開全部
圖解算法:使用JavaScript 作者簡介
吳燦銘,現(xiàn)任榮欽科技股份有限公司執(zhí)行長,美國Rochester Institute of Technology計(jì)算機(jī)科學(xué)研究所畢業(yè),長期從事信息教育及計(jì)算機(jī)圖書寫作的工作,計(jì)算機(jī)圖書著作包括計(jì)算器概論、數(shù)據(jù)結(jié)構(gòu)、辦公室電子數(shù)據(jù)處理、互聯(lián)網(wǎng)等相關(guān)題材,并監(jiān)制過多套游戲以及教學(xué)軟件的研發(fā)。