𝔖 Scriptorium
✦   LIBER   ✦

📁

学习JavaScript数据结构与算法 Learning JavaScript Data Structures and Algorithms

✍ Scribed by [巴西]格罗纳(LoianeGroner),孙晓博,邓钢,吴双,陈迪,袁源


Publisher
人民邮电出版社
Year
2015-10-1
Tongue
Chinese
Leaves
178
Series
图灵程序设计丛书
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


本书首先介绍了JavaScript语言的基础知识,接下来讨论了数组、栈、队列、链表、集合、字典、散列表、树、图等数据结构,之后探讨了各种排序和搜索算法,包括冒泡排序、选择排序、插入排序、归并排序、快速排序、顺序搜索、二分搜索,还介绍了动态规划和贪心算法等常用的高级算法及相关知识。

✦ Table of Contents


封面......Page 1
数字版权声明......Page 2
作译者简介......Page 3
扉页......Page 4
版权页......Page 5
版权声明......Page 6
前言......Page 8
目录......Page 14
1.1 环境搭建......Page 16
1.1.1 浏览器......Page 17
1.1.2 使用Web服务器(XAMPP)......Page 18
1.1.3 使用Node.js搭建Web服务器......Page 19
1.2 JavaScript基础......Page 21
1.2.1 变量......Page 22
1.2.2 操作符......Page 23
1.2.3 真值和假值......Page 26
1.2.4 相等操作符(==和===)......Page 27
1.3 控制结构......Page 28
1.3.1 条件语句......Page 29
1.3.2 循环......Page 30
1.5 面向对象编程......Page 31
1.7 小结......Page 33
2.1 为什么用数组......Page 34
2.2 创建和初始化数组......Page 35
2.3 添加和删除元素......Page 36
2.4 二维和多维数组......Page 39
2.5 JavaScript的数组方法参考......Page 41
2.5.2 迭代器函数......Page 42
2.5.3 搜索和排序......Page 43
2.5.4 输出数组为字符串......Page 46
2.6 小结......Page 47
3.1 栈的创建......Page 48
3.2 从十进制到二进制......Page 53
3.3 小结......Page 54
4.1 创建队列......Page 55
4.1.1 完整的Queue类......Page 57
4.1.2 使用Queue类......Page 58
4.2 优先队列......Page 59
4.3 循环队列——击鼓传花......Page 61
4.4 小结......Page 62
第5章 链表......Page 63
5.1 创建一个链表......Page 64
5.1.1 向链表尾部追加元素......Page 65
5.1.2 从链表中移除元素......Page 67
5.1.3 在任意位置插入一个元素......Page 69
5.1.4 实现其他方法......Page 71
5.2 双向链表......Page 73
5.2.1 在任意位置插入一个新元素......Page 74
5.2.2 从任意位置移除元素......Page 76
5.4 小结......Page 79
6.1 创建一个集合......Page 80
6.1.2 add方法......Page 81
6.1.3 remove和clear方法......Page 82
6.1.4 size方法......Page 83
6.1.6 使用Set类......Page 84
6.2.1 并集......Page 85
6.2.2 交集......Page 86
6.2.3 差集......Page 87
6.2.4 子集......Page 88
6.3 小结......Page 89
7.1.1 创建一个字典......Page 90
7.1.2 使用Dictionary类......Page 93
7.2.1 创建一个散列表......Page 94
7.2.2 使用HashTable类......Page 96
7.2.4 处理散列表中的冲突......Page 97
7.2.5 创建更好的散列函数......Page 105
7.3 小结......Page 106
8.1 树的相关术语......Page 107
8.2 二叉树和二叉搜索树......Page 108
8.2.1 创建BinarySearchTree类......Page 109
8.2.2 向树中插入一个键......Page 110
8.3.1 中序遍历......Page 113
8.3.2 先序遍历......Page 114
8.3.3 后序遍历......Page 115
8.4.1 搜索最小值和最大值......Page 116
8.4.2 搜索一个特定的值......Page 118
8.4.3 移除一个节点......Page 119
8.5 更多关于二叉树的知识......Page 123
8.6 小结......Page 124
9.1 图的相关术语......Page 125
9.2.1 邻接矩阵......Page 127
9.2.2 邻接表......Page 128
9.3 创建图类......Page 129
9.4 图的遍历......Page 131
9.4.1 广度优先搜索......Page 132
9.4.2 深度优先搜索......Page 137
9.5 小结......Page 143
10.1 排序算法......Page 144
10.1.1 冒泡排序......Page 145
10.1.2 选择排序......Page 148
10.1.3 插入排序......Page 149
10.1.4 归并排序......Page 150
10.1.5 快速排序......Page 153
10.2 搜索算法......Page 157
10.2.2 二分搜索......Page 158
10.3 小结......Page 160
11.1 递归......Page 161
11.1.2 斐波那契数列......Page 162
11.2 动态规划......Page 164
11.3 贪心算法......Page 167
11.4.1 理解大O表示法......Page 168
11.4.2 时间复杂度比较......Page 170
11.5 用算法娱乐身心......Page 171
11.6 小结......Page 172
附录A 时间复杂度速查表......Page 173
致谢......Page 175
关注图灵......Page 176
看完了......Page 178

✦ Subjects


JavaScript,数据结构,算法,编程,前端开发,javascript,前端,算法初级


📜 SIMILAR VOLUMES


学习JavaScript数据结构与算法(第3版)
✍ 洛伊安妮·格罗纳 📂 Library 📅 2019 🏛 人民邮电出版社 🌐 Chinese

<p>本书首先介绍了JavaScript语言的基础知识(包括ECMAScript和TypeScript),其次讨论了数组、栈、队列、双端队列和链表等重要的数据结构,随后分析了集合、字典和散列表的工作原理,接下来阐述了递归的原理、什么是树以及二叉堆和堆排序,然后介绍了图、DFS和BFS算法、各种排序(冒泡排序、选择排序、插入排序、归并排序、快速排序、计数排序、桶排序和基数排序)和搜索(顺序搜索、二分搜索和内插搜索)算法以及随机算法,接着介绍了分而治之、动态规划、贪心算法和回溯算法等高级算法以及函数式编程,最后还介绍了如何计算算法的复杂度。</p>

学习JavaScript数据结构与算法(第2版)
✍ Loiane Groner 📂 Library 📅 2017 🏛 人民邮电出版社 🌐 Chinese

<p>本书首先介绍了JavaScript 语言的基础知识以及ES6 和ES7 中引入的新功能,接下来讨论了数组、栈、队列、链表、集合、字典、散列表、树、图等数据结构,之后探讨了各种排序和搜索算法,包括冒泡排序、选择排序、插入排序、归并排序、快速排序、堆排序、计数排序、桶排序、基数排序、顺序搜索、二分搜索,然后介绍了动态规划和贪心算法等常用的高级算法以及函数式编程,最后还介绍了如何计算算法的复杂度。</p>

数据结构与算法JavaScript描述
✍ [美] Michael McMillan 📂 Library 📅 2014 🏛 人民邮电出版社 🌐 Chinese

书签已装载, 书签制作方法请找 [email protected] 完全免费 通过本书的学习,读者将能自如地选择最合适的数据结构与算法,并在JavaScript开发中懂得权衡使用。此外,本书也概述了与数据结构与算法相关的JavaScript特性。 本书主要内容如下。 数组和列表:最常用的数据结构。 栈和队列:与列表类似但更复杂的数据结构。 链表:如何通过它们克服数组的不足。 字典:将数据以键-值对的形式存储。 散列:适用于快速查找和检索。 集合:适用于存储只出现一次的元素。 二叉树:以层级的形式存储数据。 图和图算法:网络建模的理想选择。 算法:

Data Structures and Algorithm Analysis i
✍ Weiss, Mark Allen 📂 Library 📅 2011;2013 🏛 Pearson; China Machine Press 🌐 English

"Data Structures and Algorithm Analysis in Java "is an "advanced algorithms" book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis