學習JavaScript數據結構與算法(第2版)

學習JavaScript數據結構與算法(第2版) pdf epub mobi txt 電子書 下載2025

出版者:人民郵電齣版社
作者:[巴西] Loiane Groner
出品人:
頁數:232
译者:鄧 鋼
出版時間:2017-9
價格:49.00元
裝幀:平裝
isbn號碼:9787115467539
叢書系列:圖靈程序設計叢書·Web開發係列
圖書標籤:
  • JavaScript
  • 算法
  • 數據結構與算法
  • 計算機
  • 前端開發
  • 編程
  • 前端
  • 進階好書
  • JavaScript
  • 數據結構
  • 算法
  • 編程
  • 學習
  • 第2版
  • 前端開發
  • 計算機科學
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

本書首先介紹瞭JavaScript 語言的基礎知識以及ES6 和ES7 中引入的新功能,接下來討論瞭數組、棧、隊列、鏈錶、集閤、字典、散列錶、樹、圖等數據結構,之後探討瞭各種排序和搜索算法,包括冒泡排序、選擇排序、插入排序、歸並排序、快速排序、堆排序、計數排序、桶排序、基數排序、順序搜索、二分搜索,然後介紹瞭動態規劃和貪心算法等常用的高級算法以及函數式編程,最後還介紹瞭如何計算算法的復雜度。

著者簡介

Loiane Groner

花旗銀行軟件開發經理,負責海外項目的開發和團隊管理;原IBM公司係統分析師及團隊負責人;巴西坎皮納斯Java用戶組(CampinasJUG)領導者、聖埃斯皮裏圖Java用戶組(ESJUG)協調人;巴西各大型技術會議特邀發言人;Sencha和Java技術布道者,通過博客(http://loianegroner.com)為軟件開發社區撰稿,發錶關於IT職業發展和常用開發技術的文章和視頻。另著有《精通Ext JS》等書。

圖書目錄

第1章 JavaScript簡介  1
1.1 JavaScript數據結構與算法  1
1.2 環境搭建  2
1.2.1 最簡單的環境搭建  2
1.2.2 使用Web服務器(XAMPP)  4
1.2.3 使用Node.js搭建Web服務器  5
1.3 JavaScript基礎  6
1.3.1 變量  7
1.3.2 操作符  9
1.3.3 真值和假值  11
1.3.4 相等操作符(==和===)  12
1.4 控製結構  14
1.4.1 條件語句  14
1.4.2 循環  15
1.5 函數  16
1.6 JavaScript麵嚮對象編程  17
1.7 調試工具  18
1.8 ECMAScript概述  19
1.9 ECMAScript 6的功能  21
1.9.1 用let替代var聲明變量  21
1.9.2 常量  23
1.9.3 模闆字麵量  23
1.9.4 箭頭函數  24
1.9.5 函數的參數默認值  24
1.9.6 聲明展開和剩餘參數  25
1.9.7 使用類進行麵嚮對象編程  27
1.10 ECMAScript 7的功能  29
1.11 小結  30
第2章 數組  31
2.1 為什麼用數組  31
2.2 創建和初始化數組  32
2.3 添加元素  33
2.3.1 使用push方法  33
2.3.2 插入元素到數組首位  34
2.4 刪除元素  34
2.5 在任意位置添加或刪除元素  36
2.6 二維和多維數組  36
2.6.1 迭代二維數組的元素  37
2.6.2 多維數組  38
2.7 JavaScript的數組方法參考  39
2.7.1 數組閤並  39
2.7.2 迭代器函數  40
2.7.3 ECMAScript 6和數組的新功能  42
2.7.4 排序元素  46
2.7.5 搜索  48
2.7.6 輸齣數組為字符串  49
2.8 類型數組  50
2.9 小結  51
第3章 棧  52
3.1 棧數據結構  52
3.1.1 創建棧  53
3.1.2 嚮棧添加元素  53
3.1.3 從棧移除元素  53
3.1.4 查看棧頂元素  54
3.1.5 檢查棧是否為空  54
3.1.6 清空和打印棧元素  54
3.2 ECMAScript 6和Stack類  56
3.3 用棧解決問題  59
3.4 小結  61
第4章 隊列  62
4.1 隊列數據結構  62
4.2 創建隊列  63
4.2.1 嚮隊列添加元素  63
4.2.2 從隊列移除元素  63
4.2.3 查看隊列頭元素  64
4.2.4 檢查隊列是否為空  64
4.2.5 打印隊列元素  64
4.3 用ECMAScript 6語法實現的Queue類  66
4.4 優先隊列  66
4.5 循環隊列——擊鼓傳花  68
4.6 JavaScript任務隊列  70
4.7 小結  70
第5章 鏈錶  71
5.1 鏈錶數據結構  71
5.2 創建鏈錶  72
5.2.1 嚮鏈錶尾部追加元素  73
5.2.2 從鏈錶中移除元素  75
5.2.3 在任意位置插入元素  77
5.2.4 實現其他方法  79
5.3 雙嚮鏈錶  82
5.3.1 在任意位置插入新元素  82
5.3.2 從任意位置移除元素  85
5.4 循環鏈錶  87
5.5 小結  88
第6章 集閤  89
6.1 構建數據集閤  89
6.2 創建集閤  89
6.2.1 has(value)方法  90
6.2.2 add方法  91
6.2.3 remove和clear方法  91
6.2.4 size方法  92
6.2.5 values方法  93
6.2.6 使用Set類  93
6.3 集閤操作  94
6.3.1 並集  94
6.3.2 交集  95
6.3.3 差集  97
6.3.4 子集  98
6.4 ES6——Set類  99
6.5 小結  101
第7章 字典和散列錶  102
7.1 字典  102
7.1.1 創建字典  102
7.1.2 使用Dictionary類  105
7.2 散列錶  106
7.2.1 創建散列錶  106
7.2.2 使用HashTable類  108
7.2.3 散列錶和散列集閤  109
7.2.4 處理散列錶中的衝突  109
7.2.5 創建更好的散列函數  117
7.3 ES6——Map類  118
7.4 ES6——WeakMap類和WeakSet類  118
7.5 小結  119
第8章 樹  120
8.1 樹數據結構  120
8.2 樹的相關術語  121
8.3 二叉樹和二叉搜索樹  121
8.3.1 創建BinarySearchTree類  122
8.3.2 嚮樹中插入一個鍵  123
8.4 樹的遍曆  126
8.4.1 中序遍曆  126
8.4.2 先序遍曆  127
8.4.3 後序遍曆  128
8.5 搜索樹中的值  129
8.5.1 搜索最小值和最大值  130
8.5.2 搜索一個特定的值  131
8.5.3 移除一個節點  133
8.6 自平衡樹  137
8.6.1 Adelson-Velskii-Landi樹(AVL樹)  137
8.6.2 更多關於二叉樹的知識  143
8.7 小結  143
第9章 圖  144
9.1 圖的相關術語  144
9.2 圖的錶示  146
9.2.1 鄰接矩陣  146
9.2.2 鄰接錶  147
9.2.3 關聯矩陣  148
9.3 創建Graph類  148
9.4 圖的遍曆  150
9.4.1 廣度優先搜索  151
9.4.2 深度優先搜索  156
9.5 最短路徑算法  162
9.5.1 Dijkstra算法  163
9.5.2 Floyd-Warshall算法  165
9.6 最小生成樹  166
9.6.1 Prim算法  166
9.6.2 Kruskal算法  168
9.7 小結  169
第10章 排序和搜索算法  170
10.1 排序算法  170
10.1.1 冒泡排序  171
10.1.2 選擇排序  174
10.1.3 插入排序  175
10.1.4 歸並排序  176
10.1.5 快速排序  179
10.1.6 堆排序  183
10.1.7 計數排序、桶排序和基數排序(分布式排序)  186
10.2 搜索算法  187
10.2.1 順序搜索  187
10.2.2 二分搜索  187
10.3 小結  189
第11章 算法模式  190
11.1 遞歸  190
11.1.1 JavaScript調用棧大小的限製  191
11.1.2 斐波那契數列  191
11.2 動態規劃  193
11.2.1 最少硬幣找零問題  194
11.2.2 背包問題  196
11.2.3 最長公共子序列  198
11.2.4 矩陣鏈相乘  200
11.3 貪心算法  202
11.3.1 最少硬幣找零問題  203
11.3.2 分數背包問題  204
11.4 函數式編程簡介  205
11.4.1 函數式編程與命令式編程  205
11.4.2 ES2015和函數式編程  206
11.4.3  JavaScript函數式工具箱——map、filter和reduce  207
11.4.4 JavaScript函數式類庫和數據結構  209
11.5 小結  209
第12章 算法復雜度  210
12.1 大O錶示法  210
12.1.1 理解大O錶示法  210
12.1.2 時間復雜度比較  212
12.1.3 NP完全理論概述  214
12.2 用算法娛樂身心  216
12.3 小結  217
· · · · · · (收起)

讀後感

評分

书中基本的内容有: 1、数组 (1)数组其实是内存里连续的一块地址,当删除某一块时,那么其他的内容向前移动; (2)数组中常用的方法; 2、栈 (1)后进先出,例如:饭店洗盘子 3、队列 (1)先进先出,例如:排队上厕所 4、链表 (1)链表其实是内存里不连续的地址, (2)单向链表:一...  

評分

书中基本的内容有: 1、数组 (1)数组其实是内存里连续的一块地址,当删除某一块时,那么其他的内容向前移动; (2)数组中常用的方法; 2、栈 (1)后进先出,例如:饭店洗盘子 3、队列 (1)先进先出,例如:排队上厕所 4、链表 (1)链表其实是内存里不连续的地址, (2)单向链表:一...  

評分

这本书很薄(160页不到),从图书馆借来三四天,断断续续翻着读完。非常不错的一本数据结构与算法的入门书籍。不论是哪种开发方向,对想学习数据结构与算法的人来说都是个不错的选择,尤其是本身数据结构与算法功底偏弱的前端开发人员(这点上你大可不必认可,起码我是这样的)...  

評分

书上小错误太多了 上下文有些时候也不对应 有些小细节也不提及让读者自己去揣测作者的意思 不知道是翻译的问题还是原版就这样 读着很莫名其妙 不如阅读其他语言写的书 目前读到第十章 写的不够细 总体而言可以了解ES6的一些新特性以及应用 可以读但是没有必要 但是市场上js实现...  

評分

书上小错误太多了 上下文有些时候也不对应 有些小细节也不提及让读者自己去揣测作者的意思 不知道是翻译的问题还是原版就这样 读着很莫名其妙 不如阅读其他语言写的书 目前读到第十章 写的不够细 总体而言可以了解ES6的一些新特性以及应用 可以读但是没有必要 但是市场上js实现...  

用戶評價

评分

看瞭一遍,挺有收獲的,接下來刷題。

评分

對於非科班來說,很難。對於科班來說,大概太基礎吧……

评分

看瞭一遍,挺有收獲的,接下來刷題。

评分

對於非科班來說,很難。對於科班來說,大概太基礎吧……

评分

還不錯

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有